including dynamic_obj.h
[dia.git] / ChangeLog
blob6c67ea6c2b19aa7edb742fbd4ea6df9891339c8c
1 2003-08-25  Steffen Macke <sdteffen@web.de>
3         * diagramdata.h: including dynamic_obj.h
5 2003-08-25  Lars Clausen  <lrclause@cs.uiuc.edu>
7         * app/diapsft2renderer.c (draw_string): Use
8         dia_font_scaled_build_layout to ensure similarity of text.
10         * lib/diagramdata.c: Remove obj from dynobj list when removing
11         from layer to avoid nasty race conditions.
13         * app/undo.c (group_objects_revert): Make sure to unparent and
14         remove from dynobj list when changing layers objects.
16 2003-08-23  Steffen Macke <sdteffen@web.de>
18         * plug-ins/wmf/wmf.cpp (draw_image): replaced BitBlt() with 
19         StretchBlt(); fixes #92249
20         
21 2003-08-23  Lars Clausen  <lrclause@cs.uiuc.edu>
23         * app/filedlg.c (file_save_as_callback): 
24         * app/preferences.h: 
25         * app/preferences.c (prefs_data): 
26         * lib/diagramdata.h: 
27         * lib/diagramdata.c (new_diagram_data): 
28         * app/load_save.c (diagram_data_load): 
29         Let the document remember whether it was compressed.  The user can
30         still override this in the Save As... dialog, and that will still
31         be remembered as the default for new diagrams.
33 2003-08-23  Steffen Macke <sdteffen@web.de>
35         * plug-ins/xslt/Makefile.am: added dia-uml2componentlist.xsl
37 2003-08-22  Steffen Macke <sdteffen@web.de>
39         * plug-ins/xslt/dia-uml.xsl:
40         * plug-ins/xslt/dia-uml2componentlist.xsl: generate a HTML file with a
41         table containing a list of components grouped by stereotype
43 2003-08-21  Steffen Macke <sdteffen@web.de>
45         * lib/makefile.msc: added connectionpoint.obj
46         * lib/libdia.def: added connpoint_update, find_slope_directions
47         * app/disp_callbacks.c: including scroll_tool.h
48         * obj/makefile.msc: added component_feature.obj
49         * app/paginate_gdiprint.c: fixed loop initialization in 
50         paginate_gdiprint(); partial fix for bug #85831 - the scaling is still
51         wrong
53 2003-08-21  Lars Clausen  <lrclause@cs.uiuc.edu>
55         * plug-ins/python/pydia-object.c (PyDiaObject_MoveHandle): Fix
56         move_handle call.
58         * lib/diagramdata.h: Colors added to prefs.
59         * lib/diagramdata.c (new_diagram_data): Set diagram colors from prefs.
60         New field for pagebreak color, which should
61         behave the same as grid color and be settable for a diagram.
63         * app/diagram.c (diagram_init): Update diagram pagebreak color
64         from prefs. 
66         * app/grid.c (pagebreak_draw): Draw using diagrams pagebreak
67         colors. 
69         * app/preferences.[ch]: Default diagram colors now #defines, so
70         loading can use it.  Also, colors are now in NewDiagramData, so
71         are passed nicely into new diagrams directly from prefs.  Yum.
73         * app/load_save.c (diagram_data_write_doc, diagram_data_load): 
74         Support for loading and saving grid and pagebreak colors with the
75         diagram.  I'm inclined to make all the three Colors in diagram
76         Color*s instead, so we can tell if they're specified for the
77         diagram or merely the default setting.  There'd be no way for the
78         user to tell if the color of a diagram is default, though, unless
79         we add a 'reset to default' button to prefs.
81         * app/dia-props.c: Adding widgets for dynamic grid, grid colour,
82         pagebreak color.  Unsensitizing grid size when dynamic.
84         * objects/UML/component.c: Patch from Krzysztof Foltman
85         <kfoltman@onet.pl>: Add two new connectionpoints and adjust a
86         third.  Makes the left side connections actually be on the line
87         (gasp!). 
89 2003-08-20  Steffen Macke <sdteffen@web.de>
91         * lib/libdia.def: added layer_find_closest_object_except
92         * lib/diagramdata.c: added ; after GOTO to make MSVC compile 
94 2003-08-20  Lars Clausen  <lrclause@cs.uiuc.edu>
96         * app/tool.h: 
97         * app/tool.c: 
98         * app/scroll_tool.c: 
99         * app/interface.c: 
100         * app/disp_callbacks.c: 
101         * app/create_object.h: 
102         * app/create_object.c: Patch from Krzysztof Foltman
103         <kfoltman@onet.pl>: Middle button can scroll transiently when
104         menu-bar-mode is on, and mouse wheels (hopefully) can scroll in
105         various ways.
107         * app/authors.h: 
108         * sheets/UML.sheet.in: 
109         * sheets/UML/receptacle.xpm: 
110         * sheets/UML/Makefile.am: 
111         * sheets/UML/eventsource.xpm: 
112         * sheets/UML/eventsink.xpm: 
113         * objects/UML/pixmaps/facet.xpm: 
114         * objects/UML/uml.c (dia_plugin_init): 
115         * objects/UML/Makefile.am (libuml_objects_la_SOURCES): 
116         * objects/UML/component_feature.c: 
117         Patch from W. Borgert <debacle@debian.org>:  Add event sources and
118         event sinks.
119         
120 2003-08-19  Lars Clausen  <lrclause@cs.uiuc.edu>
122         * lib/object.h: Turning some comments into doxygen style.
124         * lib/object_defaults.c (dia_object_defaults_load)
125         (dia_object_default_get, dia_object_default_create): 
126         Fixing up existing documentation.
128         * lib/object.h: Doxygen style documentation begun.
130         * app/create_object.c: 
131         * app/undo.c: 
132         * app/connectionpoint_ops.c: 
133         * app/disp_callbacks.c: 
134         * app/modify_tool.c: 
136         * objects/network/wanlink.c (wanlink_move_handle): 
137         * objects/network/bus.c (bus_move_handle): 
139         * objects/flowchart/parallelogram.c (pgram_move_handle): 
140         * objects/flowchart/ellipse.c (ellipse_move_handle): 
141         * objects/flowchart/diamond.c (diamond_move_handle): 
142         * objects/flowchart/box.c (box_move_handle): 
144         * objects/custom/custom_object.c (custom_move_handle): 
146         * objects/chronogram/chronoref.c (chronoref_move_handle): 
147         * objects/chronogram/chronoline.c (chronoline_move_handle): 
149         * objects/SADT/box.c (sadtbox_move_handle): 
150         * objects/SADT/arrow.c (sadtarrow_move_handle): 
151         * objects/SADT/annotation.c (annotation_move_handle): 
153         * objects/Misc/analog_clock.c (analog_clock_move_handle): 
155         * objects/GRAFCET/vergent.c (vergent_move_handle): 
156         * objects/GRAFCET/vector.c (arc_move_handle): 
157         * objects/GRAFCET/transition.c (transition_move_handle): 
158         * objects/GRAFCET/step.c (step_move_handle): 
159         * objects/GRAFCET/condition.c (condition_move_handle): 
160         * objects/GRAFCET/action.c (action_move_handle): 
162         * objects/FS/function.c: 
163         * objects/FS/flow.c: 
164         * objects/FS/flow-ortho.c (orthflow_move_handle): 
165         * objects/FS/flow-poly.c (flow_move_handle): 
167         * objects/UML/usecase.c (usecase_move_handle): 
168         * objects/UML/state_term.c (state_move_handle): 
169         * objects/UML/state.c (state_move_handle): 
170         * objects/UML/small_package.c (smallpackage_move_handle): 
171         * objects/UML/realizes.c (realizes_move_handle): 
172         * objects/UML/object.c (objet_move_handle): 
173         * objects/UML/note.c (note_move_handle): 
174         * objects/UML/node.c (node_move_handle): 
175         * objects/UML/message.c (message_move_handle): 
176         * objects/UML/lifeline.c (lifeline_move_handle): 
177         * objects/UML/large_package.c (largepackage_move_handle): 
178         * objects/UML/implements.c (implements_move_handle): 
179         * objects/UML/generalization.c (generalization_move_handle): 
180         * objects/UML/fork.c (fork_move_handle): 
181         * objects/UML/dependency.c (dependency_move_handle): 
182         * objects/UML/constraint.c (constraint_move_handle): 
183         * objects/UML/compprop.c (compprop_move_handle): 
184         * objects/UML/component.c (component_move_handle): 
185         * objects/UML/branch.c (branch_move_handle): 
186         * objects/UML/association.c (association_move_handle): 
187         * objects/UML/actor.c (actor_move_handle): 
188         * objects/UML/activity.c (state_move_handle): 
189         * objects/UML/class.c (umlclass_move_handle): 
191         * objects/standard/ellipse.c (ellipse_move_handle): 
192         * objects/standard/zigzagline.c (zigzagline_move_handle): 
193         * objects/standard/textobj.c (textobj_move_handle): 
194         * objects/standard/polyline.c (polyline_move_handle): 
195         * objects/standard/polygon.c (polygon_move_handle): 
196         * objects/standard/line.c (line_move_handle): 
197         * objects/standard/image.c (image_move_handle): 
198         * objects/standard/bezier.c (bezierline_move_handle): 
199         * objects/standard/arc.c (arc_move_handle): 
200         * objects/standard/beziergon.c (beziergon_move_handle): 
201         * objects/standard/box.c (box_move_handle): 
202         
203         * objects/ER/relationship.c (relationship_move_handle): 
204         * objects/ER/participation.c (participation_move_handle): 
205         * objects/ER/entity.c (entity_move_handle): 
206         * objects/ER/attribute.c (attribute_move_handle): 
207         
208         * lib/polyshape.c (polyshape_move_handle): 
209         * lib/polyshape.h: 
210         * lib/orth_conn.c (orthconn_move_handle): 
211         * lib/orth_conn.h: 
212         * lib/neworth_conn.c (neworthconn_move_handle): 
213         * lib/neworth_conn.h: 
214         * lib/element.c (element_move_handle): 
215         * lib/element.h: 
216         * lib/connection.c (connection_move_handle): 
217         * lib/connection.h: 
218         * lib/beziershape.c (beziershape_move_handle): 
219         * lib/beziershape.h: 
220         * lib/bezier_conn.c (bezierconn_move_handle): 
221         * lib/bezier_conn.h: 
222         *BINARY COMPATIBILITY CHANGE*
223         Update prototype for *_move_handle() to include connectionpoint,
224         and also pass on modifiers.  Pass in connectionpoint where
225         applicable. 
226         
227         * lib/dummy_dep.h (dummy_dep): Adding dummy dependencies for new
228         file connectionpoint.c.
230 2003-08-17  Danilo Šegan  <dsegan@gmx.net>
232         * configure.in: Added "sr" and "sr@Latn" to ALL_LINGUAS.
234 2003-08-15  Lars Clausen  <lrclause@cs.uiuc.edu>
236         * lib/object.c (object_copy): Use g_malloc0 instead of g_malloc.
238         * lib/beziershape.c (beziershape_update_data): Autoroute
239         directions for beziershapes!
241         * lib/connectionpoint.c (find_slope_directions): 
242         * lib/connectionpoint.h: Function for finding the available
243         directions on a slope.
245         * lib/polyshape.c: Reasonable directions for
246         connectionpoints.       
248 2003-08-14  Lars Clausen  <lrclause@cs.uiuc.edu>
250         * objects/Misc/analog_clock.c (analog_clock_update_arrow_tips): 
251         * objects/GRAFCET/vergent.c (vergent_update_data): 
252         * objects/GRAFCET/transition.c (transition_update_data): 
253         * objects/GRAFCET/action.c (action_update_data): 
254         * objects/GRAFCET/step.c (step_update_data): 
255         * objects/FS/function.c (function_update_data): 
256         * lib/connpoint_line.c (connpointline_putonaline): 
257         * objects/ER/attribute.c (attribute_update_data): 
258         * objects/ER/entity.c (entity_update_data): 
259         * objects/ER/relationship.c (relationship_update_data): 
260         * objects/chronogram/chronoline.c (chronoline_update_data): Set
261         directions for connection points.
263         * objects/UML/component.c (component_create): Set to allow
264         parenting. 
266         * app/create_object.c (create_object_button_press): 
267         * app/diagram.[ch] (diagram_find_clicked_object_except): 
268         * lib/diagramdata.[ch] (layer_find_closest_object_except): 
269         Avoid parenting to objects you're connecting to (otherwise you
270         couldn't make a connection out of a parenting object).  To do
271         this, added functions to find the nearest object except a given
272         list of objects.
273         
274         * app/render_libart.c: Rearrange libart include to avoid multiple
275         include program (and put libart includes inside #ifdef!)
277 2003-08-13  Lars Clausen  <lrclause@cs.uiuc.edu>
279         * lib/dialibartrenderer.c: Don't include art_config.h if others
280         also do, as it isn't #ifdef'd.
282         * objects/flowchart/ellipse.c (ellipse_update_data): Add
283         directions for connection points.
285 2003-08-12  Lars Clausen  <lrclause@cs.uiuc.edu>
287         * objects/flowchart/box.c (box_update_data): Add directions, use
288         connpoint_update. 
289         (box_load): Use g_malloc0.
291         * lib/Makefile.am (libdia_la_SOURCES):
292         * lib/connectionpoint.c (connpoint_update): 
293         Function to call to update a connection point info in _update_data().
294         
295         * lib/connectionpoint.h: Convenience DIR_ macros.
297         * app/preferences.c (prefs_data): Make pretty formatted XML the
298         default.
300         * lib/dialibartrenderer.c: 
301         * app/render_libart.c: Make sure art_config.h is included, cause
302         some libart headers are broken.
304         * configure.in (HAVE_FREETYPE): Restore CPPFLAGS to old value
305         after test.  Add freetype-config cflags to cflags variable.
307 2003-08-11  Lars Clausen  <lrclause@cs.uiuc.edu>
309         * app/authors.h: Credits for Krzysztof.
311         * sheets/Flowchart.sheet.in: Updated descriptions from Krzysztof
312         Foltman <kfoltman@onet.pl>.  It occurs to me that the name (rather
313         than the description) is visible in the title of the properties
314         dialog.  That ought to be a short description (translatable),
315         though we still want long descriptions for the tooltips.  Hmmm...
317         * configure.in: Updated to use AC_LINK_IFELSE instead of
318         AC_TRY_COMPILE, also force to link to check libs on Solaris.
320         * objects/ER/entity.c (entity_load): 
321         * objects/ER/attribute.c (attribute_load): 
322         * lib/attributes.c (attributes_set_default_font): 
323         Check if font is non-null before unreffing.
324         
325 2003-08-08  Lars Clausen  <lrclause@cs.uiuc.edu>
327         * app/diagram.c (diagram_ungroup_selected) 
328         (diagram_group_selected): Use the undo apply to make sure grouping
329         and ungrouping is done in consistent manners.  This removes a fair
330         amount of duplicated code from diagram.c.
332         * app/undo.c (ungroup_objects_revert, ungroup_objects_apply) 
333         (group_objects_revert, group_objects_apply): Working undo/redo for
334         diagram tree updates.  The initial actions still don't quite work.
336 2003-08-07  Lars Clausen  <lrclause@cs.uiuc.edu>
338         * app/create_object.c (create_object_button_press): 
339         * app/undo.[ch]: 
340         * app/diagram.c: Undo support for parenting.  Uses apply/revert in
341         undo only for manipulating the parent/child relationships.  Things
342         like removing an object doesn't use the undo functions for
343         parenting, so any updates to come (like to diagramtree) should be
344         done in those, too.
346 2003-08-03  Hans Breuer  <hans@breuer.org>
348         * app/create_object.c : minor formating and g_new0 for
349         tool creation
351         * lib/bezier_conn.[hc] lib/beziershape.[hc]
352           lib/prop_geomtypes.c (prop_geomtypes_register)
353           objects/standard/bezier.c objects/standard/beziergon.c :
354         ability to set bezpoints via StdProp api
356         * plug-ins/python/pydia-property.c : convert list of tuples
357         to BEZPOINTARRAY
359         *  plug-ins/python/diasvg_import.py : use it to
360         implement part of path parsing. Also minor improvements
361         like inheritance of group attributes to members,
362         whitespace, title and style:text/css ignoring ;-)
364 2003-08-02  Hans Breuer  <hans@breuer.org>
366         * lib/connections.c (connection_move_handle): return
367         something to make it compile
368         * lib/object.c(190) : error C4033: 'object_list_move_delta_r' 
369         must return a value -> dito
370         [Is there a warnings-as-errors switch we could use with gcc 
371          to avoid such in future ?]
373         * plug-ins/python/pydia-object.h : define *_Check macros
374         * plug-ins/python/diamodule.c : provide dia.group_create()
375         * plug-ins/python/pydia-diagramdata.c : add 
376         DiaDiagramData.add_layer()
377         * plug-ins/python/pydia-property.c : allow to set color by
378         tuple of doubles
380         *  plug-ins/python/diasvg_import.py : based on the above
381         implement a) group support, b) rgb(1,2,3) color handling,
382         and somewhat fishy data:image/png;base64 support (create
383         temporary files from inline image data)
384         d) dump the import errors as text into an 'Error' layer
386         *  plug-ins/python/diasvg.py : add xmlns:xlink, removed a
387         stray " in draw_rect and corrected error message formating 
389         * plug-ins/pydia/pydia-geometry.c : removed ## to make it
390         compile with gcc 3.3, fixes bug #117204. Thanks to Daniel 
391         Jacobowitz.
392         
393 2003-08-01  Hubert Figuiere  <hfiguiere@teaser.fr>
395         * app/magnify.c (create_magnify_tool): allocate with g_new0()
397         * app/preferences.c (prefs_create_dialog): use checkboxes for boolean 
398         preferences values (see bug 118570). Also group items into a GtkFrame.
400 2003-07-31  Lars Clausen  <lrclause@cs.uiuc.edu>
402         * app/menus.c:
403         * app/menus.h:
404         * app/commands.h: 
405         * app/commands.c (objects_unparent_children_callback): 
406         * app/diagram.h: 
407         * app/diagram.c (diagram_unparent_selected,
408         (diagram_update_menu_sensitivity): 
409         Added unparenting of single children.
411         * lib/bezier_conn.c:
412         * lib/bezier_conn.h:
413         * lib/beziershape.c:
414         * lib/beziershape.h:
415         * lib/connection.c:
416         * lib/connection.h:
417         * lib/element.c:
418         * lib/element.h:
419         * lib/group.c:
420         * lib/neworth_conn.c:
421         * lib/neworth_conn.h:
422         * lib/object.h:
423         * lib/orth_conn.h:
424         * lib/poly_conn.c:
425         * lib/poly_conn.h:
426         * lib/polyshape.c:
427         * lib/polyshape.h:
428         * objects/EML/instantiation.c:
429         * objects/EML/interaction-ortho.c:
430         * objects/EML/interaction.c:
431         * objects/EML/process.c:
432         * objects/ER/attribute.c:
433         * objects/ER/entity.c:
434         * objects/ER/participation.c:
435         * objects/ER/relationship.c:
436         * objects/FS/flow-ortho.c:
437         * objects/FS/flow-poly.c:
438         * objects/FS/flow.c:
439         * objects/FS/function.c:
440         * objects/GRAFCET/action.c:
441         * objects/GRAFCET/condition.c:
442         * objects/GRAFCET/step.c:
443         * objects/GRAFCET/transition.c:
444         * objects/GRAFCET/vector.c:
445         * objects/GRAFCET/vergent.c:
446         * objects/Misc/analog_clock.c:
447         * objects/SADT/annotation.c:
448         * objects/SADT/arrow.c:
449         * objects/SADT/box.c:
450         * objects/UML/activity.c:
451         * objects/UML/actor.c:
452         * objects/UML/association.c:
453         * objects/UML/branch.c:
454         * objects/UML/class.c:
455         * objects/UML/classicon.c:
456         * objects/UML/component.c:
457         * objects/UML/constraint.c:
458         * objects/UML/dependency.c:
459         * objects/UML/fork.c:
460         * objects/UML/generalization.c:
461         * objects/UML/implements.c:
462         * objects/UML/large_package.c:
463         * objects/UML/lifeline.c:
464         * objects/UML/message.c:
465         * objects/UML/node.c:
466         * objects/UML/note.c:
467         * objects/UML/object.c:
468         * objects/UML/realizes.c:
469         * objects/UML/small_package.c:
470         * objects/UML/state.c:
471         * objects/UML/state_term.c:
472         * objects/UML/usecase.c:
473         * objects/chronogram/chronoline.c:
474         * objects/chronogram/chronoref.c:
475         * objects/custom/custom_object.c:
476         * objects/flowchart/box.c:
477         * objects/flowchart/diamond.c:
478         * objects/flowchart/ellipse.c:
479         * objects/flowchart/parallelogram.c:
480         * objects/network/bus.c:
481         * objects/network/wanlink.c:
482         * objects/standard/arc.c:
483         * objects/standard/bezier.c:
484         * objects/standard/beziergon.c:
485         * objects/standard/box.c:
486         * objects/standard/ellipse.c:
487         * objects/standard/image.c:
488         * objects/standard/line.c:
489         * objects/standard/polygon.c:
490         * objects/standard/polyline.c:
491         * objects/standard/textobj.c:
492         * objects/standard/zigzagline.c:
493         Binary compatibility update:  Added return value for foo_move() and
494         foo_move_handle().  Orthconn derivatives also returns change from
495         orthconn_move_handle().
496         
497         * lib/orth_conn.c: Undo support for autorouting.  Neworthconn
498         doesn't support it yet.
500         * lib/object.c (object_list_move_delta_r, object_list_move_delta):
501         Add returning ObjectChange from object moves.  Needs to handle
502         multiple object moves.
504         * app/modify_tool.c (modify_motion, modify_release): Add
505         ObjectChange from move & move_handle to undo stack.
507         * objects/EML/instantiation.c (instantiation_move): Removing
508         duplicate move & update.
510 2003-07-30  Lars Clausen  <lrclause@cs.uiuc.edu>
512         * plug-ins/xfig/xfig-export.c: Added support for arrow head
513         export.  Many arrow types not supported by XFig, replacing those
514         with standard arrows.  Not sure whether it'd be better to render
515         them as a group of lines instead.  You'd lose the arrow-ness for
516         further editing, but preserve the actual shape of it.  Also added
517         support for dash length.
519         * plug-ins/xfig/xfig-import.c: Added support for dash length settings.
521         * plug-ins/xfig/fig-format-3.2: Added copy of Fig format
522         description for version 3.2, for reference.
524         * plug-ins/xfig/xfig-import.c: Added import of arrows.
526         * app/menus.c: Removed prefs item from Gnome diagram menu.  Made
527         Align Vertical Adjacent call _v rather than _h.
529 2003-07-29  Hubert Figuiere  <hfiguiere@teaser.fr>
531         * app/scroll_tool.c (create_scroll_tool): 
532         * app/modify_tool.c (create_modify_tool): use g_new0() to
533         initialize the tool
535 2003-07-29  Lars Clausen  <lrclause@cs.uiuc.edu>
537         * configure.in: Added proper settings for XSLT_LIBS and XSLT_CFLAGS.
539 2003-07-24  Pablo Saratxaga  <pablo@mandrakesoft.com>
541         * configure.in: Added Macedonian (mk) to ALL_LINGUAS
543 2003-07-23  Dmitry G. Mastrukov  <dmitry@taurussoft.org>
545         * configure.in: Added Belarusian to ALL_LINGUAS.
547 2003-07-19  Hans Breuer  <hans@breuer.org>
549         [
550          Make the xslt plug-in work on win32, too. It appears
551          to require a quite recent version of libxml and libxslt,
552          otherwise windoze pathes aren't translated correctly
553          during file processing
554         ]
556         * plug-ins/xslt/xslt.h : #include <glib.h> before 
557         using G_OS_WIN32
559         * plug-ins/xslt/xslt.c : plugged some memory leaks and do
560         the 'script' file finding similar to how it is done
561         with the python scripts (no need for hardcoded pathes,
562         removed the 'plugin' part from the path)
564         * plug-ins/xslt/stylesheets.xml : added again. It does
565         not have any path but only the pure filename again
567         * plug-ins/xslt/stylesheets.xml.in : removed
569         * plug-ins/xslt/Makefile.am : removed 'plugin' and the
570         rule to process stylesheets.xml.in
572         * plug-ins/makefile.msc : added xslt
574 2003-07-19  Hans Breuer  <hans@breuer.org>
576         Finally Dia learned to remember the recent selected sheet
578         * app/preferences.[hc] : added prefs.recent_sheet
579         * app/interface.c : restore and remember the sheet-option-menu
580         history, but only if the respective number is stiil available.
581         This additional adds robustness against running Dia without
582         any sheet (e.g. installation problems)
583         * app/app_procs.c : call prefs_safe() in app_exit() to remember
584         changes which are not done by the prefernces dialog
586         * app/diagram_tree_menu.c app/diagram_tree_menu_callbacks.c :
587         removed every call (especially the conditional ones) to prefs_safe().
588         Before prefs_safe() was called _many_ times during Dia startup
590 2003-07-18  Hans Breuer  <hans@breuer.org>
592         * app/makefile.msc lib/makefile.msc lib/libdia.def :
593         updated win32 build
595         * lib/color.c : use gtk_widget_get_default_visual();
596         as suggested in #114536
598         * app/interface.c app/disp_callbacks.c :
599         moved round_up () to the latter file where it is used
601         * app/linewidth_area.c : #include "interface.h" for
602         interface_get_toolbox_shell()
604 2003-07-18  Hubert Figuiere  <hfiguiere@teaser.fr>
606         * plug-ins/pixbuf/.cvsignore
607         * shapes/Cisco/.cvsignore: 
608         added cvsignore
610 2003-07-17  Lars Clausen  <lrclause@cs.uiuc.edu>
612         * app/dia-props.c (diagram_properties_retrieve): Use
613         diagram_get_name() to add the diagram name to the diagram
614         properties dialog.
616         * app/diagram.h: 
617         * app/diagram.c (diagram_get_name): New function to get a
618         reasonable diagram name.
620         * lib/diagramdata.h: Added major_lines, dynamic and colour to grid
621         info.  Still need to be able to set dynamic grid.  Also ought to
622         follow Gnome style and have instant apply.
624         * app/preferences.h: 
625         * app/preferences.c (prefs_data): Remove option to use stippled
626         grid, add option for major line offset.  Default to 5 minor lines
627         per major line.
628         Add option for dynamically sized grid.
630         * app/display.c (ddisplay_render_pixmap): Call pagebreak_draw as well.
632         * app/grid.c: Pagebreak drawing separated out.  Grid drawing using
633         stippled/solid to display minor/major grid lines.  Line drawing in
634         separate functions away from calculating line distance.
636         * app/grid.h: Split page break drawing out of grid_draw.
638         * app/layer_dialog.c (layer_dialog_show): Patch from Hubert
639         Figuiere <hfiguiere@teaser.fr>:  Layer dialog show go to front
640         when menu item is selected.
642 2003-07-15  Lars Clausen  <lrclause@cs.uiuc.edu>
644         * configure.in: Removed -Winline flag to make way for important
645         warnings. 
647         * samples/UML-demo.dia: Adjusted for 0.91 font size, saved as
648         non-compressed.  Should fix bug #117381, also look prettier.
649         
650         * Makefile.am: 
651         * dia.desktop.in: Patch from Mark McLoughlin <mark@skynet.ie>:
652         Set up desktop info more properly.
654 2003-07-13  Lars Clausen  <lrclause@cs.uiuc.edu>
656         * activity.c:
657         * actor.c:
658         * branch.c:
659         * class.c:
660         * classicon.c:
661         * component.c:
662         * large_package.c:
663         * lifeline.c:
664         * node.c:
665         * note.c:
666         * object.c:
667         * small_package.c:
668         * state.c:
669         * state_term.c:
670         * usecase.c: 
671         Autorouting directions patch from Krzysztof Foltman
672         <kfoltman@onet.pl>.
674         * app/menus.c: Wrong GNOME paren fixed.  Correct callbacks for
675         GNOME parent menu items.
676         
677         * app/authors.h: Added Vadim to contributors list.
679 2003-07-12  Lars Clausen  <lrclause@cs.uiuc.edu>
681         * app/commands.[ch]: 
682         * app/create_object.c: 
683         * app/disp_callbacks.[ch]: 
684         * app/diagram.[ch]: 
685         * app/interface.c: 
686         * app/load_save.c: 
687         * app/menus.[ch]:
688         * app/modify_tool.c
689         * app/undo.[ch]:
690         * lib/Makefile.am:
691         * lib/group.c: 
692         * lib/object.[ch]: 
693         * lib/parent.[ch]:
694         * objects/UML/large_package.c: Patch from Vadim Berezniker
695         <vadim@berezniker.com>: 
696         Objects may "parent" other objects, i.e. contain them within
697         themselves, restrain them and move them along.  Some more stuff is
698         needed, such as selection and individual unparenting.  This adds
699         parenting to UML - Large Package rather than Box.
701 2003-07-11  Lars Clausen  <lrclause@cs.uiuc.edu>
703         * app/linewidth_area.c: Patch from Krzysztof Foltman
704         <kfoltman@onet.pl>: Make linewidth dialog conform to HIG (well,
705         conform more, at least:).
707         * plug-ins/metapost/render_metapost.[ch] : Applied patch from
708         Chris Sperandio <sperandi@eng.usf.edu>:  Fixed linewidths and
709         arcs.  Implemented images (though there is some pixelization and
710         banding in the output).  Changed output file format to be a little
711         more readable.  
713         * app/app_procs.c (app_exit): Added message for double exit, which
714         shouldn't happen any more.  Also preventing strange g_object_unref
715         messages by having a printf after gtk_main_quit.  This is really
716         weird.
718         * app/interface.c (toolbox_delete): Avoid double app_exit call by
719         removing handler for destroy when delete is called.
721 2003-07-07  Lars Clausen  <lrclause@cs.uiuc.edu>
723         * app/display.h: 
724         * app/display.c (ddisplay_scroll_to_object,
725         ddisplay_scroll_center_point):  New function for easy scrolling to
726         object or point.
728 2003-07-06  Lars Clausen  <lrclause@cs.uiuc.edu>
730         * plug-ins/xslt/Makefile.am: Patch from Hubert Figuiere:  Add
731         $(srcdir) on stylesheets.xml.
733         * app/menus.c: Patch from Hubert Figuiere: Adds help menu to
734         diagram menus (since they're at the top by default now).  Also
735         move the Properties... menu item from Dialogs to Objects.  Dialogs
736         menu should disappear at some point.
738         * autogen.sh: Patch from Hubert Figuiere: Don't automatically call
739         ./configure from ./autogen.sh, as configure may need to be run
740         from a different directory.  (Also more standard this way.)
742         * app/app_procs.c (app_init): 
743         * app/Makefile.am (INCLUDES): Gnome standardization patch from
744         Alex. 
746 2003-07-03  Lars Clausen  <lrclause@cs.uiuc.edu>
748         * objects/flowchart/parallelogram.c (pgram_update_data):
749         Left/right alignment for parallelograms.  Doesn't use all
750         available space, but then pgrams also ignore their shear value.
751         This thing needs a loving hand.
753 2003-07-01  Hans Breuer  <hans@breuer.org>
755         * lib/properties.h : introduce PROP_FLAG_OPTIONAL
756         * lib/proplist.c : don't complain if optional attr is missing
757         * lib/orth_conn.h : make "orth_autoroute" optional to
758         stop complaining with older files.
760 2003-06-13  Guntupalli Karunakar  <karunakar@freedomink.org>
762         * configure.in: Added "ml" for Malayalam in ALL_LINGUAS.
764 2003-06-05  Andrew Halper  <ashalper@cox.net>
766         * app/diagram_tree.c : add scrolling of drawing area
767         to desired object on "Locate".  Patch modified to use new ddisplay
768         function ddisplay_scroll_to_object().
770 2003-06-11  Lars Clausen  <lars@raeder.dk>
772         * lib/diagramdata.h: Added major_lines, dynamic and colour to grid
773         info.  Before next version, the grid dialog (view dialog, really)
774         must be redone to allow a) instant apply, b) apply to all
775         diagrams, and c) setting colour, dynamic, major lines.
777         * app/preferences.h: 
778         * app/preferences.c (prefs_data): Remove option to use stippled
779         grid, add option for major line offset.  Default to 5 minor lines
780         per major line.
781         Add option for dynamically sized grid.
783         * app/display.c (ddisplay_render_pixmap): Call pagebreak_draw as well.
785         * app/grid.c: Pagebreak drawing separated out.  Grid drawing using
786         stippled/solid to display minor/major grid lines.  Line drawing in
787         separate function away from calculating line distance.
789         * app/grid.h: Split page break drawing out of grid_draw.
791 2003-05-15  Hans Breuer  <hans@breuer.org>
793         * plug-ins/python/diasvg.py : add xlink definition,
794         also avoid to put spaces into attribute values. At least
795         Sodipodi doesn't like them in width/height attributes
797         * plug-ins/python/diasvg_import.py : add simple scaling.
798         Some (more) handling for <svg>, <desc>, <circle>        
800         * plug-ins/python/scascale.py : (new file) which does
801         some experimental scaling via StdProp api
803         * plug-ins/python/pydia-cpoint.c 
804           plug-ins/python/pydia-handle.c : return PyDiaPoint for
805         obj.pos not simple tuples. PyDiaPoint has a tuple interface
806         so this may even be api compatible ...
808 2003-05-11  Hans Breuer  <hans@breuer.org>
810         * app/line_area.c : add window position persitence
812         * lib/poly_conn.[hc] lib/polyshape.[hc] : allow to set 
813         'poly_points' via StdProp api
814         * lib/neworth_conn.h : don't rely on OrthConn and 
815         NewOrtConn having the same struct offsets
817         * lib/properties.h : introduce PROP_FLAG_WIDGET_ONLY
818         to help separating 'useful' properies - in terms of
819         the PyDia access
821         * objects/custom/custom_object.c
822           objects/UML/*.c
823         add the missing prop_desc_list_calculate_quarks to
824         all the *_describe_props()
826         * objects/standard/beziergon.c objects/standard/bezier.c :
827         explicit initializtion of default_user_data
828         * objects/standard/polygon.c objects/standard/polyline.c :
829         Same here. Also use POLY<CONN|SHAPE>_COMMON_PROPERTIES
831         * plug-ins/python/diamodule.c : implement dia.register_import
833         * plug-ins/python/makefile.msc : need to link with Pango
834         for pango_color_parse()
836         * plug-ins/python/pydia-property.c : add a bunch of type
837         conversions to PyDiaProperty_ApllyToObject()
839         * plug-ins/python/diasvg_import.py : (new file) which currently
840         is mainly a stress test for PyDia but for some files already
841         produces better results than svg-import.c
843 2003-05-06  Lars Clausen  <lrclause@cs.uiuc.edu>
845         * objects/UML/uml.c (uml_get_operation_string): Avoid ':' on
846         type-less operations.
848 003-05-03  Hasbullah Bin Pit  <sebol@ikhlas.com>
850         * configure.in(ALL_LINGUAS): Added "ms".
852 2003-05-01  Lars Clausen  <lrclause@cs.uiuc.edu>
854         * plug-ins/xslt/xslt.c (xslt_ok): 
855         * plug-ins/shape/shape-export.c (new_shape_renderer): 
856         * plug-ins/svg/render_svg.c (new_svg_renderer): 
857         * plug-ins/hpgl/hpgl.c (export_data): 
858         * plug-ins/dxf/dxf-export.c (export_dxf): 
859         * plug-ins/metapost/render_metapost.c (export_metapost): 
860         * plug-ins/pstricks/render_pstricks.c (export_pstricks): 
861         * plug-ins/xfig/xfig-export.c (export_fig): 
862         * plug-ins/wpg/wpg.c (export_data): 
863         * plug-ins/cgm/cgm.c (export_cgm): 
864         * app/render_eps.c (export_eps): 
865         * app/export_png.c (export_png_ok): 
866         * app/load_save.c (diagram_data_save): Adding and standardizing
867         output file error messages to include fopen error message.
869 2003-05-01  Steffen Macke <sdteffen@web.de>
871         * app/persistence.c: do not use unistd.h for MSVC build
873 2003-04-30  Lars Clausen  <lrclause@cs.uiuc.edu>
875         * sheets/Assorted.sheet.in
876         * sheets/Circuit.sheet.in
877         * sheets/Contact.sheet.in
878         * sheets/EML.sheet.in
879         * sheets/ER.sheet.in
880         * sheets/Electric.sheet.in
881         * sheets/FS.sheet.in
882         * sheets/Flowchart.sheet.in
883         * sheets/GRAFCET.sheet.in
884         * sheets/Logic.sheet.in
885         * sheets/MSE.sheet.in
886         * sheets/Misc.sheet.in
887         * sheets/Pneumatic.sheet.in
888         * sheets/SADT.sheet.in
889         * sheets/SDL.sheet.in
890         * sheets/UML.sheet.in
891         * sheets/chronogram.sheet.in
892         * sheets/ciscohub.sheet.in
893         * sheets/ciscomisc.sheet.in
894         * sheets/cisconetwork.sheet.in
895         * sheets/ciscorouter.sheet.in
896         * sheets/civil.sheet.in
897         * sheets/network.sheet.in
898         * sheets/sybase.sheet.in:
899         Patch from Jan-Willem Harmanny <jwharmanny@zeelandnet.nl>
900         standardizes shape descriptions to use no articles, no 'create
901         ...'.
902         
903         * app/interface.c (tool_data): Standard objects follow same
904         standard as sheets.
906 2003-04-29  Lars Clausen  <lrclause@cs.uiuc.edu>
908         * app/color_area.c (color_area_edit): More informative title on
909         color selection dialog.
911         * app/disp_callbacks.c (ddisplay_drop_object): Update menu
912         sensitivity when dropping object in.  Also reset tool to pointer.
914         * objects/flowchart/diamond.c (diamond_update_data): 
915         * objects/flowchart/parallelogram.c (pgram_update_data): Added
916         left and right alignment options.
918 2003-04-28  Lars Clausen  <lrclause@cs.uiuc.edu>
920         * objects/flowchart/box.c: Added left and right alignment options.
922 2003-04-26  Lars Clausen  <lrclause@cs.uiuc.edu>
924         * app/persistence.c (persistence_load): Test existence of
925         persistence file before trying to open it.
927 2003-04-25  Lars Clausen  <lrclause@cs.uiuc.edu>
929         * app/properties.c: Escape now closes properties dialogs.
931 2003-04-25  Hans Breuer  <hans@breuer.org>
933         * app/config.h.win32 : bump version to 0.91+cvs
935         * app/makefile.msc lib/makefile.msc lib/libdia.def : updated
937         * lib/dia_dirs.c : G_OS_WIN32: #define mkdir(s,a) _mkdir(s)
939         * app/commands.c : don't leak "netscape" if getenv("BROWSER")
940         returns NULL
942         * app/presistence.c : need to #include "dia_xml_libxml.h"
943         for xmlDiaParseFile
945         * app/layer_dialog.c : make delayed creation work by protecting
946         all non static layer_dialog_*() with :
947            if (layer_dialog == NULL || layer_dialog->dialog == NULL)
948              create_layer_dialog();
949         * app/app_procs.c : removed /* create_layer_dialog(); */
951         * objects/uml/association.c : give it a minimal StdProp
952         implementation to fix bug #108896
953         * lib/object_defaults.c : don't try to copy props if there
954         is no obj->ops->describe_props
956 2003-04-24  Lars Clausen  <lrclause@cs.uiuc.edu>
958         * objects/standard/image.c (image_create): 
959         * objects/standard/ellipse.c (ellipse_create): 
960         * objects/standard/box.c (box_create): 
961         * objects/flowchart/ellipse.c (ellipse_create): 
962         * objects/flowchart/diamond.c (diamond_create): 
963         * objects/flowchart/box.c (box_create): 
964         * objects/custom/custom_object.c (custom_create): 
965         * objects/ER/relationship.c (relationship_create): 
966         * objects/ER/entity.c (entity_create): 
967         * objects/ER/attribute.c (attribute_create): Initialize
968         elem->height to DEFAULT_HEIGHT instead of DEFAULT_WIDTH.
970         * lib/dia_svg.c (dia_svg_parse_style): Added case to set center
971         alignment. 
973         * configure.in: 
974         * plug-ins/Makefile.am: 
975         * plug-ins/xslt/Makefile.am: 
976         * plug-ins/xslt/xslt.c (dia_plugin_init): 
977         Patch from Götz Waschk <waschk@informatik.uni-rostock.de> uses
978         automake-style if to only include xslt dir when needed.  Works
979         with automake 1.4 and up, at least.
981 2003-04-22  Lars Clausen  <lrclause@cs.uiuc.edu>
983         * lib/diasvgrenderer.c (draw_string): 
984         * lib/dia_svg.c (dia_svg_parse_style): Use
985         text-anchor:(start|middle|end).
987         * lib/diasvgrenderer.c (draw_polygon, fill_polygon): Use svg
988         polygon rather than polyline & avoid missing line pieces.
989         (get_draw_style): Set fill-opacity to 0 on draw_style to avoid
990         black-filled things.
992 2003-04-21  Lars Clausen  <lrclause@cs.uiuc.edu>
994         * app/persistence.c (persistence_load): Check that persistence
995         file exists before trying to read it.
996         (persistence_update_window): Removed printf.
998         * objects/GRAFCET/step.c: Don't copy defaults for name and id.
1000         * lib/autoroute.c: Take badness into the layouters again, as some
1001         of them know they can do things that are pretty but would be
1002         counted as ugly by the default calculation.
1004         * objects/UML/large_package.c: Shrink package name box when no
1005         stereotype is present.
1007         * lib/orth_conn.h (ORTHCONN_COMMON_MENUS): 
1008         * lib/orth_conn.c: Added object menu item for autorouting.
1010         * objects/FS/flow-ortho.c (orthflow_get_object_menu): 
1011         Autorouting, plus set initial dragging handle to be the end, not
1012         the middle.
1013         (orthflow_draw): Flipped arrow place to be at the end, as
1014         originally intended (got lost in arrow update).
1016         * objects/standard/zigzagline.c (zigzagline_get_object_menu): 
1017         * objects/UML/dependency.c (dependency_get_object_menu): 
1018         * objects/UML/association.c (association_get_object_menu): 
1019         * objects/UML/realizes.c (realizes_get_object_menu): 
1020         * objects/SADT/arrow.c (sadtarrow_get_object_menu): 
1021         * objects/GRAFCET/vector.c (arc_get_object_menu): 
1022         * objects/ER/participation.c (participation_get_object_menu): 
1023         * objects/EML/instantiation.c (instantiation_get_object_menu): 
1024         * objects/UML/generalization.c (generalization_get_object_menu): 
1025         * objects/EML/interaction-ortho.c (interaction_ortho_get_object_menu): 
1026         Autorouting setup (currently disabled for SADT/arrow).
1027         
1028 2003-04-19  Lars Clausen  <lrclause@cs.uiuc.edu>
1030         * lib/autoroute.c: Removed printfs.
1032         * lib/orth_conn.c: 
1033         * lib/autoroute.[ch] (autoroute_layout_orthconn): Handle
1034         non-connected orthconns too.
1036 2003-04-18  Lars Clausen  <lrclause@cs.uiuc.edu>
1038         * lib/orth_conn.h: 
1039         * lib/orth_conn.c: Function to set autorouting on/off, use
1040         autorouting in move_handle (turns off when a middle handle is
1041         moved), added to standard orthconn props. 
1043         * app/disp_callbacks.c (create_object_menu, popup_object_menu):
1044         Stopped signal emission for check menu items being set to on/off.
1046         * objects/standard/zigzagline.c: Added autorouting object menu item.
1048         * lib/autoroute.c: Added last cases of autoroute layout, fixed
1049         floating point comparison bug, cleaned up layouters, tweaked
1050         badness to allow kinks. 
1052 2003-04-17  Lars Clausen  <lrclause@cs.uiuc.edu>
1054         * lib/connectionpoint.h: Changed DIR_* macros to go around the
1055         clock. 
1057         * lib/orth_conn.[ch] (orthconn_set_points): New function to set all
1058         points at once.
1059         * objects/standard/zigzagline.c (zigzagline_move_handle): Removed
1060         old cruft, added call to autoroute (currently cannot be turned
1061         off).  Need to check what undo thinks about this.
1062         * lib/autoroute.[ch]: Fairly working simple layout.
1064         * lib/Makefile.am (libdia_la_SOURCES): Added autoroute files.
1065         * lib/autoroute.[ch]: Start of proper autorouting functionality.
1067 2003-04-10  Lars Clausen  <lrclause@cs.uiuc.edu>
1069         * lib/prop_widgets.c: Show labels on ListProp.
1071 2003-04-11  Steffen Macke <sdteffen@web.de>
1073         * doc/en/dia-manual.xml: removed reference of non-existing authors 
1074         note.
1075         * doc/en/usage-objects-selecting: commented out misleading section
1076         references.
1078 2003-04-10  Lars Clausen  <lrclause@cs.uiuc.edu>
1080         * app/app_procs.c (app_init): Layer window now opened at startup
1081         only if needed.
1083         * lib/prop_widgets.c: Show labels on ListProp.
1085 2003-04-09  Steffen Macke <sdteffen@web.de>
1087         * doc/en/*.sgml: removed files
1088         * doc/en/*.xml: added files
1089         * doc/en/Makefile.am: switched to XML DocBook
1091 2003-04-09  Lars Clausen  <lrclause@cs.uiuc.edu>
1093         * plug-ins/xslt/xslt.c (dia_plugin_init): 
1094         * configure.in: Added --with-xslt-prefix to allow other XSLT
1095         placements than /usr/lib.
1097 2003-04-09  Steffen Macke <sdteffen@web.de>
1099         * lib/makefile.mingw: updated to include latest files, including 
1100         and linking libintl
1101         * lib/geometry.h: don't define isinf and finite for mingw gcc build
1103 2003-04-08  Lars Clausen  <lrclause@cs.uiuc.edu>
1105         * app/persistence.h:
1106         * app/persistence.c (persistence_register_window_create): 
1107         * app/app_procs.c (app_init): 
1108         Register window function that doesn't create the window unless it
1109         should be open.  Other windows should move to this, so startup
1110         speed can be reduced.
1111         
1112         * app/persistence.h: Removed call prototype for update_window, now
1113         done internally.
1114         * app/persistence.c (persistence_register_window): A number of
1115         fixes.  Doesn't forget position when window is closed.  Now
1116         actually loads prefs.
1118         * app/layer_dialog.c (create_layer_dialog): Removed extraneous
1119         event connect.
1121         * app/preferences.c (prefs_data): 
1122         * app/diagram_tree_window.h: 
1123         * app/diagram_tree_window.c: Added persistence registering.
1124         Removed prefs items storing size and openness. 
1126         * app/sheets_dialog.c (create_sheets_main_dialog): Added
1127         persistence registering.  
1129         * app/Makefile.am (dia_core_files): Added persistence files.
1131         * lib/dia_dirs.h: 
1132         * lib/dia_dirs.c (dia_config_ensure_dir): New function to ensure
1133         that dirs are present.
1135         * app/app_procs.c (app_init): Loads persistent values on startup.
1136         (app_exit): Saves persistent values on exit.
1138         * app/layer_dialog.c (create_layer_dialog): Registers the layer
1139         window for persistence.
1141         * app/persistence.[ch]: New files handling various kinds of
1142         persistence.
1144 2003-04-04  Lars Clausen  <lrclause@cs.uiuc.edu>
1146         * lib/arrows.c: Adjusted arrow head spacing, more systematic arrow
1147         head spacing calculations.  Added half-circle arrow from Matthieu
1148         Sozeau <mattam@netcourrier.com> 
1150 2003-04-03  Lars Clausen  <lrclause@cs.uiuc.edu>
1152         * app/app_procs.c (app_init): Moved layer dialog init to allow
1153         tooltips to be initialized.
1155         * app/interface.c (create_display_shell): More tooltips.
1157         * app/linewidth_area.c (linewidth_area_create) 
1158         (linewidth_area_events): 
1159         * app/color_area.c (color_area_events, color_area_create): 
1160         Made tooltips work by embedding drawing_area in event_box.
1162         * app/interface.c (create_display_shell,
1163         (create_lineprops_area, create_color_area): Added a few tooltips.
1165 2003-04-01  Lars Clausen  <lrclause@cs.uiuc.edu>
1167         * app/pixmaps/off-grid.xpm: 
1168         * app/pixmaps/on-grid.xpm: 
1169         * app/Makefile.am (EXTRA_DIST): Added snap to grid icons.
1171         * app/display.h: 
1172         * app/commands.c (view_snap_to_grid_callback): 
1173         * app/display.c (ddisplay_set_snap_to_grid) 
1174         (update_snap_grid_status): 
1175         * app/interface.c (create_display_shell, grid_toggle_snap): 
1176         Added snap-to-grid status button.
1178 2003-03-31  Lars Clausen  <lrclause@cs.uiuc.edu>
1180         * app/app_procs.c (app_init): Create a new diagram if a file on
1181         the command line isn't found.
1183 2003-03-17  Lars Clausen  <lrclause@cs.uiuc.edu>
1185         * lib/dialibartrenderer.c (draw_string): Correct color handling
1186         for AA.
1188 2003-03-14  Lars Clausen  <lrclause@cs.uiuc.edu>
1190         * NEWS: 
1191         * doc/en/dia-manual.sgml: 
1192         * doc/pl/dia-manual.sgml: 
1193         * configure.in: 
1194         * dia.spec (Release): 
1195         Version 0.91 is here!
1197 2003-02-10  Steffen Macke <sdteffen@web.de>
1199         * plug-ins/wmf/wmf.cpp: patch from Ken Tsukahara 
1200         <ken.tsukahara@tmt-d.co.jp>, fixes windows printing and WMF export of
1201         non-ANSI characters, closes #107980
1203 2003-03-04  Lars Clausen  <lrclause@cs.uiuc.edu>
1205         * configure.in: 
1206         * NEWS: 
1207         * dia.spec (Release): 
1208         * doc/en/dia-manual.sgml: Upping to pre6.
1210         * configure.in: Missing comma broke HAVE_IEEEFP_H test.
1212         * app/lineprops_area.c (dia_arrow_chooser_new): Fixing bug
1213         #107511:  Make arrow selector for correct arrow type.
1215 2003-03-03  Lars Clausen  <lrclause@cs.uiuc.edu>
1217         * shapes/Circuit/Makefile.am (SHAPES): Added hjumper.png to
1218         EXTRA_DIST.
1220 2003-03-02  Lars Clausen  <lrclause@cs.uiuc.edu>
1222         * doc/en/dia-manual.sgml: 
1223         * configure.in: 
1224         * NEWS: 
1225         * dia.spec (Release): Upping to pre5.
1227         * configure.in: Add freetype-config derived libs to the
1228         AC_CHECK_LIB statement for freetype.
1230 2003-02-28  Hans Breuer  <hans@breuer.org>
1232         [fix for bug #107203]
1234         * lib/diarenderer.c : add warning 'implementation'
1235         for fill_rect to avoid crashing with a renderer
1236         which does not implement this required function.
1238         * plug-ins/dxf/dxf-export.c : provide - still empty -
1239         'implementations' for fill_rect and fill_polygon 
1240         to suppress the above warnings. Now it works like
1241         in version 0.90 
1243 2003-02-28  Steffen Macke <sdteffen@web.de>
1245         * samples/all_objects.dia: New sheet containing all dia shapes
1246         and objects; one layer per sheet
1247         
1248 2003-02-28  Lars Clausen  <lrclause@cs.uiuc.edu>
1250         * lib/prop_text.c (multistringprop_get_widget,
1251         multistringprop_reset_widget, multistringprop_set_from_widget): 
1252         Now uses GtkTextView instead of deprecated stuff, and also works:)
1254         * configure.in: Slightly more informative error message for isinf.
1256         * dia.spec (Requires): Require libxml2 rather than libxml.
1258 2003-02-28  Steffen Macke <sdteffen@web.de>
1260         * shapes/Circuit/hjumper.png:
1261         * shapes/Circuit/hjumper.shape: added missing icon for horizontal
1262         jumper shape
1263         
1264 2003-02-26  Lars Clausen  <lrclause@cs.uiuc.edu>
1266         * doc/en/dia-manual.sgml: 
1267         * configure.in: 
1268         * dia.spec (Release):
1269         * NEWS: New prerelease 0.91pre4, two important fixes.
1271 2003-02-25  Lars Clausen  <lrclause@cs.uiuc.edu>
1273         * plug-ins/xslt/Makefile.am (EXTRA_DIST): Also dist
1274         stylesheets.xml.in 
1276         * app/commands.c (help_manual_callback): More correct URL for help
1277         page (include file://, was broken on Dillo without it).
1279 2003-02-24  Lars Clausen  <lrclause@cs.uiuc.edu>
1281         * app/disp_callbacks.c: Set modifed when text is changed.
1283         * app/modify_tool.c (modify_button_release): Allow undo for moving
1284         objects.
1286 2003-02-16  Lars Clausen  <lrclause@cs.uiuc.edu>
1288         * dia.spec: 
1289         * doc/en/dia-manual.sgml: 
1290         * NEWS: 
1291         * configure.in: New prerelease with important bugfix.
1292         * shapes/network/digitizing_board.png:
1293         * shapes/network/plotter.png: Re-adding with -kb.
1294         
1295 2003-02-17  Abel Cheung  <maddog@linux.org.hk>
1297         * app/app_procs.c (app_init): Add comment for translators.
1299 2003-02-16  Lars Clausen  <lrclause@cs.uiuc.edu>
1301         * lib/filter.c (filter_register_import, filter_register_export):
1302         Don't accept filters with NULL description.
1304         * lib/plug-ins.c (dia_plugin_load): Fail if there's no description
1305         (as we assume the description is available in other places).
1307 2003-02-15  Lars Clausen  <lrclause@cs.uiuc.edu>
1308         
1309         * app/disp_callbacks.c (ddisplay_vsb_update, ddisplay_hsb_update): 
1310         * app/display.c (ddisplay_resize_canvas): Use
1311         ddisplay_add_update_all().
1312         (ddisplay_add_update_all): Free display and update lists when
1313         doing update_all, as they'll be regenerated immediately to cover
1314         all visible area.  Fixes bug #106165, crash when resizing.  This
1315         appears to be the original AA crash bug, believed long extinct.
1317 2003-02-13  Lars Clausen  <lrclause@cs.uiuc.edu>
1319         * app/commands.c (help_manual_callback): Use file: protocol for
1320         help. 
1322         * plug-ins/xslt/.cvsignore: Ignore .o files, please.
1324         * plug-ins/xslt/stylesheets: Removed old-style config file.
1325         
1326         * plug-ins/xslt/stylesheets.xml.in: New XML-based config file.
1328         * plug-ins/xslt/Makefile.am: 
1329         * plug-ins/xslt/xslt.c: Applied patch from Matthieu, improved path
1330         handling (no more DIA_PLUGIN_PATH).
1332 2003-02-11  Lars Clausen  <lrclause@cs.uiuc.edu>
1334         * plug-ins/svg/render_svg.c: 
1335         * lib/diasvgrenderer.c: Fixed numeric localized output issues.
1337 2003-02-10  Lars Clausen  <lrclause@cs.uiuc.edu>
1339         * objects/SADT/arrow.c (sadtarrow_draw): Clamp cosa, cosb to 
1340         [-1.0, 1.0].  Shouldn't be necessary, but in some cases the
1341         side of the triangle is longer than the hypotenuse.  Rounding
1342         error suspected.
1344 2003-02-09  Lars Clausen  <lrclause@cs.uiuc.edu>
1346         * NEWS: 
1347         * configure.in: 
1348         * doc/en/dia-manual.sgml: Update for pre2.
1350         * app/menus.c (display_menu_items): Fixed wrongly place separators.
1352         * objects/flowchart/box.c (box_update_data): Applied patch from
1353         Eivind Tagseth <eivind-gnome@multinet.no> to allow resize (with
1354         comment). 
1356         * app/paginate_psprint.c (print_page): Set paper name, so it
1357         convinces ps printers to use to right size.
1359 2003-02-07  Lars Clausen  <lrclause@cs.uiuc.edu>
1361         * app/properties.c (properties_show): Hide the dialog if the
1362         object is NULL (get rid of 'no properties' randomly popping up).
1364 2003-02-06  Lars Clausen  <lrclause@cs.uiuc.edu>
1366         * plug-ins/pixbuf/pixbuf.c (export_data): Adjust width and height
1367         for diagrams not starting at origo.
1369 2003-02-05  Lars Clausen  <lrclause@cs.uiuc.edu>
1371         * dia.spec (BuildRequires): Use libxml2-devel.
1373         * plug-ins/pixbuf/Makefile.am: Added to CVS.
1375         * RELEASE-PROCESS: Note on RPM version numbers.
1377         * app/interface.c (create_display_shell): Don't set as toolbar
1378         under Unix, either.  Especially not the diagram shell.  It removes
1379         it from the taskbar and makes it unresizable, always-on-top with
1380         OpenBox.  TOOLBAR != TOOLBOX.  Setting toolbox to the only
1381         appropriate thing, UTILITY, is not good either, you lose resizing
1382         and minimizing/maximizing under OpenBox.
1384         * app/menus.c (display_menu_items): Set delete item to use Delete.
1386 2003-02-04  Lars Clausen  <lrclause@cs.uiuc.edu>
1388         * dia.spec (BuildRequires, Requires): Updated for Gtk2
1389         requirements.
1391         * app/disp_callbacks.c (ddisplay_canvas_events): Only add a
1392         display flush when getting focus in, or we may get an update after
1393         the diagram has been destroyed in some cases.  Fixes bug #105221.
1395         * plug-ins/xfig/xfig-import.c: Notes on the splines used by XFig.
1397         * lib/diarenderer.c: Notes on the basis matrix for our beziers.
1399         * app/app_procs.c (app_init): Fixed missing popt context for Gnome
1400         - gnome-compiled Dia will now read files specified on the command line.
1402 2003-02-03  Lars Clausen  <lrclause@cs.uiuc.edu>
1404         * INSTALL (REQUIREMENTS): Updated requirements section.
1406         * configure.in: Better finite() check from Mårten Svantesson
1407         <f95-msv@nada.kth.se>.  Doesn't seem to generate strange dangly
1408         if's. 
1409         
1410 2003-02-03  Lars Clausen  <lrclause@cs.uiuc.edu>
1412         * plug-ins/xfig/xfig-import.c: Notes on spline conversions.
1414         * app/app_procs.c (debug_break): Added some code to avoid
1415         over-eager optimizations removing the call.  Surely there's a
1416         nicer way, but I'm not sure how.
1418         * app/diapsft2renderer.c (draw_bezier_outline): Removed paps relic
1419         that set text to black.
1421 2003-02-02  Lars Clausen  <lrclause@cs.uiuc.edu>
1423         * NEWS: Mention of Twiki as doc source for Python.
1425         * plug-ins/pixbuf/pixbuf.c: Export with pixbuf if
1426         libart/libpng is not available.  Later when we have a way of
1427         letting the user pick options in the file select dialog we shall
1428         allow the choice when applicable.
1430 2003-02-02  Steffen Macke <sdteffen@web.de>
1432         * doc/en/usage-loadsave.sgml:
1433         * doc/en/usage-objects.sgml: patch from
1434         James K. Lowden <jklowden@schemamania.org> to fix
1435         some docbook errors
1436         
1437 2003-02-01  Lars Clausen  <lrclause@cs.uiuc.edu>
1439         * plug-ins/Makefile.am (SUBDIRS): 
1440         * plug-ins/pixbuf/pixbuf.c: 
1441         * plug-ins/pixbuf/Makefile.am: 
1442         * configure.in: 
1443         Added pixbuf plugin to Makefile.am, but for import only.  PNG
1444         export handled by libart, which is better. JPG export is
1445         discouraged.  BMP is not much used on Unix.  Next release will
1446         integrate libart to allow all outputs.
1448 2003-02-01  Hans Breuer  <hans@breuer.org>
1450         * app/preferences.c :
1451         * app/pagesetup.c :
1452         the last two dialogs with 'old' button order finally
1453         are converted to gtk2, no GnomeDialog in all of Dia 
1454         anymore :-) 
1456 2003-02-01  Hans Breuer  <hans@breuer.org>
1458         * app/filedlg.c : don't try to use a button as
1459         'overwrite-file-dialog'-parent, use the FileSelDialog
1460         instead
1462         * plug-ins/pixbuf/pixbuf.c : make it work with 
1463         system-visual-depth < 24. Remove 'bmp' from output
1464         format extensions, it just was wishful thinking.
1466         * plug-ins/python/Makefile.am : added the four new python 
1467         plug-ins mentioned below to pyplugin_DATA and EXTRA_DIST
1469 2003-02-01  Hans Breuer  <hans@breuer.org>
1471         * NEWS : updated content beside dependencies
1473 2003-02-01  Hans Breuer  <hans@breuer.org>
1475         * lib/arrow.h : arrow_types needs to be declared as DIAVAR
1476         to make it useable across DLL boundaries
1477         * app/lineprops_area.c : same code to access arrow_types
1478         on all platforms
1480         * objects/UML/class.c : the non empty string is e.g.
1481         comment != NULL && comment[0] != '\0'
1482         * objects/UML/uml.c : same here, don't bother with
1483         empty operation stereotypes
1485 2003-02-01  Steffen Macke <sdteffen@web.de>
1487         * app/lineprops_area.c: latest changes do not work on
1488         windows, using old code without tooltips
1489         * makefile.msc: fixed copying of wmf.dll
1490         * plug-ins/makefile.msc: 
1491         * app/makefile.msc:
1492         * lib/makefile.msc: now linking libintl
1493         * config.h.win32: enabling native language support
1495 2003-01-31  Lars Clausen  <lrclause@cs.uiuc.edu>
1497         * plug-ins/xslt/Makefile.am (libxslt_filter_la_LDFLAGS): Removed
1498         -ldl and -lglib.  May or may not work on windows...awaiting verdict.
1500 2003-01-31  Daniel Yacob  <locales@geez.org>
1502         * configure.in: Added am (Amharic) to ALL_LINGUAS.
1504 2003-01-31  Steffen Macke <sdteffen@web.de>
1506         * objects/UML/class.c (umlclass_calculate_data): fixed crash
1507         when comments were visible, no class comment available and
1508         a attribute comment
1509          
1510 2003-01-31  Lars Clausen  <lrclause@cs.uiuc.edu>
1512         * RELEASE-PROCESS: Updated to fit new install-module syntax.
1513         * Prerelease 0.91-pre1 released on a suspecting public.  Tagging
1514         with DIA_0_91_PRE1.
1516 2003-01-30  Lars Clausen  <lrclause@cs.uiuc.edu>
1518         * config.h.win32: 
1519         * NEWS: 
1520         * configure.in:
1521         * dia.spec:
1522         Prerelease version changes, version 0.91-pre1.
1524         * app/sheets_dialog_callbacks.h: 
1525         * app/sheets_dialog_callbacks.c: 
1526         * app/sheets_dialog.c (create_sheets_main_dialog): 
1527         * app/sheets.c (sheets_dialog_create): More destroy stuff.  Trying
1528         to handle destruction of main dialog cleanly, but it's a mess.
1530         * configure.in: Downgraded ieeefp test to make it not produce
1531         illegal shell code.
1533         * lib/widgets.c (dia_arrow_selector_set_arrow): 
1534         (dia_line_style_selector_set_linestyle): Select menu dot
1535         correctly set.
1537         * lib/arrows.c (calculate_arrow_point): Fix of wrong arrow
1538         adjustment for diamondheads.
1540         * lib/plug-ins.c (dia_plugin_load): Fixed typo.
1542         * app/properties.c (create_dialog): Destroy properties dialog and
1543         box correctly.
1545         * app/sheets_dialog_callbacks.c
1546         (on_sheets_dialog_button_edit_clicked): Only create a new dialog
1547         if the old one is destroyed.
1549 2003-01-29  Lars Clausen  <lrclause@cs.uiuc.edu>
1551         * app/export_png.c (export_png_ok): Added info on resolution.
1552         Should (next release) improve export dialog to allow setting
1553         resolution instead of pixels.
1555         * app/lineprops_area.c (dia_arrow_chooser_new): Use menudesc list
1556         to generate arrowheads as well as tooltips.
1558         * lib/arrows.c: Added hollow diamond to menudesc list.
1560         * lib/arrows.[ch]: 
1561         * lib/widgets.[ch]: Moved arrow name list into arrows.[ch] to
1562         unify with rendered menu.
1564         * lib/diarenderer.c (draw_line_with_arrows)
1565         (draw_polyline_with_arrows, draw_arc_with_arrows)
1566         (draw_bezier_with_arrows): Fixed linestyle change bug (#104488)
1567         without changing renderer API.  Thanks to David Scherba for
1568         providing inspiration.
1570 2003-01-28  Lars Clausen  <lrclause@cs.uiuc.edu>
1572         * app/interface.c (create_display_shell):
1573         * app/display.h: Patching from Hubert Figuiere
1574         <hfiguiere@teaser.fr>:  Better types for menu bar widgets, and
1575         correct menu items.
1577 2003-01-26  Lars Clausen  <lrclause@cs.uiuc.edu>
1579         * app/defaults.c (defaults_show): Fixed defaults closing bug.
1580         Thanks to Hans for pointing it out.
1582 2003-01-25  Hans Breuer  <hans@breuer.org>
1584         * app/commands.c : don't warn about crashing libart renderer
1585         on win32. It simply doesn't render text anymore :-(
1587         * app/filedlg.c : use GtkMessageDialog for 'file overwrite'
1589         * objects/UML/class.c : don't access umlclass->properties_dialog
1590         after calling gtk_widget_destroy(umlclass->properties_dialog->dialog)
1591         which sets the former to NULL by destroy_properties_dialog() callback.
1593         * plug-ins/wmf/wmf.cpp : use dia_image_rowstride()
1595         * plug-ins/python/pydia-font.c : fix PyDiaFont_GetAttr()
1597         * plug-ins/python/pydia-image.c : add image.uri member
1598         not only useful for SVG rendering
1600         * plug-ins/python/diasvg.py : (new file) a more advanced
1601         example. A full blown SVG Renderer, currently only
1602         registered for .svgz
1604         * plug-ins/python/export-object.py : write text props
1606         * plug-ins/python/debug_objects.py : write prop.type and
1607         prop.visible 
1609 2003-01-25  Lars Clausen  <lrclause@cs.uiuc.edu>
1611         * objects/UML/association.c (association_update_data): Better
1612         bounding box for assoc with arrows.
1614         * lib/properties.h: New flag for properties with multiple values
1615         in groups.
1617         * app/lineprops_area.c (dia_arrow_chooser_dialog_show): Correct
1618         arrow updating in dialog.  Was broken due to changes from destroy
1619         fix:(
1621         * app/commands.c (view_aa_callback): AA warning only for Windows
1622         -- I trust the Unix side well enough.
1624         * app/render_libart.c (get_text_width): 
1625         * lib/dialibartrenderer.h (struct _DiaLibartRenderer): Font and
1626         font height can be taken from parent instance.
1628         * lib/dialibartrenderer.c (dia_libart_renderer_class_init) 
1629         (get_text_width): Proper cursor positioning for libart renderer.
1630         Ought to have a DiaInteractiveRenderer that these two can inherit
1631         from, that knows about transform.
1633 2003-01-25  Steffen Macke <sdteffen@web.de>
1635         * plug-ins/xslt/xslt.h: don't use dlfcn.h on win32. XSLT
1636         plug-in still not working on win32
1637         
1638 2003-01-24  Lars Clausen  <lrclause@cs.uiuc.edu>
1640         * app/disp_callbacks.c (ddisplay_canvas_events): Moved
1641         gdk_window_get_pointer to avoid destroy crash.  Simpler than I
1642         thought.
1644 2003-01-23  Lars Clausen  <lrclause@cs.uiuc.edu>
1646         * app/app_procs.c (app_init): Run gtk_init before popt so we don't
1647         bail out on gtk options.
1649         * lib/message.c (gtk_message_internal): Better handling of destroy
1650         event.
1652 2003-01-22  Lars Clausen  <lrclause@cs.uiuc.edu>
1654         * app/color_area.c (color_area_edit): 
1655         * lib/widgets.c (dia_file_selector_browse_pressed) 
1656         (dia_color_selector_pressed): 
1657         * app/plugin-manager.c (get_plugin_manager): 
1658         * app/filedlg.c (file_open_callback, file_save_as_callback) 
1659         (file_export_callback):
1660         * app/diagram_tree_window.c (diagram_tree_window_new): Correct
1661         handling of destroy event.
1663 2003-01-22  Alan Horkan <horkana@tcd.ie>
1665         * app/commands.c (file_new_callback): Changed Untitled to Diagram
1666         for default name.
1668 2003-01-21  Lars Clausen  <lrclause@cs.uiuc.edu>
1670         * app/preferences.c (prefs_create_dialog): 
1671         * app/linewidth_area.c (linewidth_create_dialog): 
1672         * app/lineprops_area.c (dia_arrow_chooser_dialog_show): 
1673         * app/layer_dialog.c (create_layer_dialog)
1674         (layer_dialog_edit_layer): Correct handling of destroy signal. 
1676         * app/diapsft2renderer.c (set_font): Adjust silly random factor
1677         for change in font.c
1679         * lib/widgets.c: Avoid warning when font menu file doesn't exist.
1681         * lib/font.c (dia_font_build_layout): Let's all use the same weird
1682         factor here.
1684         * app/lineprops_area.c (dia_arrow_chooser_dialog_show): 
1685         * app/layer_dialog.c (create_layer_dialog) 
1686         (layer_dialog_edit_layer): 
1687         * app/filedlg.c (file_open_callback, file_save_as_callback) 
1688         (file_export_callback): 
1689         * app/dia-props.c (create_diagram_properties_dialog): 
1690         * app/defaults.c (defaults_dialog_destroyed): 
1691         * app/color_area.c (color_area_edit): Dialog destroy event handling.
1693 2003-01-19  Lars Clausen  <lrclause@cs.uiuc.edu>
1695         * app/defaults.c (defaults_dialog_destroyed): Reset cache when
1696         defaults dialog destroyed.
1698 2003-01-19  Steffen Macke <sdteffen@web.de>
1700         * objects/makefile.msc: added bondgraph
1701         * plug-ins/makefile.msc: added GDK_PIXBUF_LIBS in order
1702         to compile pixbuf.dll
1703         * makefile.msc: copying all objects and dlls now
1704         
1705 2003-01-19  Hans Breuer  <hans@breuer.org>
1707         * app/diagram.[hc] : provide dia_open_diagrams(), make
1708         open_diagrams variable static
1709         * app/dia.def : export it (to be used by PyDia)
1710         * app/app_procs.c app/autosave.c app/diagram_tree_window.c
1711           app/display.c app/dynamic_refresh.c app/layer_dialog.c
1712           app/load_save.c : make use of dia_open_diagrams()
1714         * app/interface.c : don't set GDK_WINDOW_TYPE_HINT_TOOLBAR
1715         on win32. It removes the diagram window from the taskbar and
1716         shrinks it's window title to toolbar style (newest gtk2.2 cvs)
1718         * app/menus.c : add '...' to menu entries where a dialog 
1719         gets invoked
1720         * app/recent_files.c app/dia_embedd.c : reflect the above in 
1721         menus_get_item_from_path() calls
1723         * lib/libdia.def : add dia_image_rgba_data
1725         * lib/properties.h lib/prop_text.[hc] : add new property
1726         type StringList
1727         * objects/UML/class.[hc] object/UML/class_dialog.c : use
1728         StringList for attributes_strings and operations_strings to
1729         make this calculated data accessible via the Property API
1731         * plug-ins/python/diamodule.c : use dia_open_diagrams() and
1732         provide dia.new() to create a new diagram, dia.registered_types()
1733         to get on Dia's type registry, dia.message() for simple dialogs
1735         * plug-ins/python/pydia-diagram.c : implement DiaDiagram.display()
1736         to create a new display from a diagram. Let diagram.extents and
1737         diagram.bg_color return the same types as in diagramdata.*
1739         * plug-ins/python/pydia-geometry.c : add a read-only 
1740         'sequence interface' to DiaPoint and DiaRectangle
1742         * plug-ins/python/pydia-property.c : allow to get on StringList
1743         from Python
1745         * plug-ins/python/pydia-render.c : fix typo to make it compile
1747         * plug-ins/python/python-startup.py : removed 'import pygtk'
1748         again. This file does not need any gtk UI, and some python
1749         plug-ins don't do either
1751         * plug-ins/python/gtkcons.py : ported to GTK2 interface, now
1752         it should actually work as intended again
1754         * plug-ins/python/group_props.py : (new file) a prototype for
1755         one the most requested features: Change properties of selected
1756         objects in one step. Requires pygtk.
1758         * plug-ins/python/select_by.py : (new file) select objects by 
1759         common properties. Requires pygtk.
1761         [Start of 'PyDia Self Documentation Series']
1763         * plug-ins/python/pydiadoc.py : (new file) generates a new 
1764         diagram which contains all objects of dir(dia)
1765         
1766         * plug-ins/python/otypes.py : (new file) generates a new diagram 
1767         which contains all the currently registered object types sorted 
1768         by their containing package
1770 2003-01-18  Lars Clausen  <lrclause@cs.uiuc.edu>
1772         * configure.in: Added check for Pango >= 1.1.5, which appears to
1773         be enough to have text work.
1774         (INTLOBJS): Added dummy subst cause gettext doesn't always seem to
1775         do it.  AC_SUBST should be idempotent, though.
1777 2003-01-17  Lars Clausen  <lrclause@cs.uiuc.edu>
1779         * configure.in (HAVE_FREETYPE): Better test for freetype version
1780         using neat macro.
1781         Now actually sets HAVE_IEEEFP_H, needed for Solaris.
1783         * lib/font.c: Renamed global_size_one to global_zoom_factor to
1784         avoid confusion, and added comment.  Set scale factor in
1785         dia_font_build_layout to 1.0 for Unix side.  This fixes at least
1786         my weird scaling problems.  Fonts are now of the expectable size,
1787         i.e. the space between lines at size 1.0 is 1.0.  If we want a
1788         compatibility fix, we should scale fonts by about 1/0.75 from 0.90
1789         diagrams, though there will always be differences.
1791 2003-01-15  Lars Clausen  <lrclause@cs.uiuc.edu>
1793         * plug-ins/python/python-startup.py: 
1794         * plug-ins/python/gtkcons.py: Require gtk 2.0 for pygtk
1796         * plug-ins/python/python.c (dia_plugin_init): Added warning
1797         message for missing startup file.
1799         * lib/dialibartrenderer.c (draw_image): Alpha rendering!  Yay!
1800         
1801         * lib/dia_image.c (dia_image_rgb_data): 
1802         * app/diapsrenderer.c (draw_image): Fixed rowstride problems
1803         involving EPS.  Can't do transparency in EPS yet.
1805         * lib/dia_image.h: 
1806         * lib/dia_image.c (dia_image_rgba_data): New function to get RGBA
1807         data as one chunk.  Documentation for the RGB data getting funcs.
1808         (dia_image_rgb_data): Added comment.
1810         * lib/dialibartrenderer.c (draw_image): Correct rowstride handling
1811         (bug #103565)
1813 2003-01-13  Steffen Macke <sdteffen@web.de>
1815         * lib/dia_image.c: dia_image_rgb_data() is working for
1816         non-alpha images now. Fixes #93762
1817         * Makefile.am: added makefile.msc to EXTRA_DIST
1818         
1819 2003-01-10  Steffen Macke <sdteffen@web.de>
1821         * app/paginate_psprint.c: Closing print dialog when file
1822         could not be written. Fixes #84746
1823         
1824 2003-01-04  Steffen Macke <sdteffen@web.de>
1826         * doc/custom-shapes: incomplete description of <svg:text>
1828 2003-01-03  Steffen Macke <sdteffen@web.de>
1830         * makefile.msc(new): new makefile to create file
1831         structure suitable for running dia win32 under
1832         $(TOP)/dia/build/win32
1833         
1834 2003-01-02  Steffen Macke <sdteffen@web.de>
1835         
1836         * lib/dia_svg.c: including stdlib.h
1837         * lib/makefile.msc: added gdk_pixbuf libs to linker
1838         * app/makefile.msc: added gdk_pixbuf libs, made libart
1839         libs compatible with gnuwin32 package
1840         
1841 2003-01-01  Hans Breuer  <hans@breuer.org>
1843         * lib/font.c : more comment about global_size_one
1845         * app/menus.c : <control>[<shift>]A for plain gtk build too.
1847         * plug-ins/wmf/wmf.cpp : some type juggling to make 
1848         msvc7 happy
1850 2002-12-31  Steffen Macke <sdteffen@web.de>
1852         * app/makefile.msc: added hint on how to enable console output
1853         
1854 2002-12-17  Lars Clausen  <lrclause@cs.uiuc.edu>
1856         * objects/standard/textobj.c (textobj_load): Get the handle type
1857         right, at least to be the same as when created.
1859 2002-12-12  Lars Clausen  <lrclause@cs.uiuc.edu>
1861         * lib/dialibartrenderer.c (draw_string): Removed extra 'is'.
1863 2002-12-08  Hans Breuer  <hans@breuer.org>
1865         * app/commands.c : fixed bug #85315 'give diagram properties, 
1866         instead of no object selected error' almost a one-liner
1868         * app/splash.c : don't make having the logo pixmap
1869         mandatory. Fixes bug #96068. 
1871         * app/defaults.c : avoid crashing from open-dialog,esc,open-dialog
1872         sequence by connecting to the "delete_event"
1873         * app/objects/uml/class_dialog.c : handle "destroy" for 
1874         the same reason.
1876         * lib/libdia.def : remove diaXmlNewChild again
1878         * app/paginate_gdiprint.cpp : reflect Dia's page setting
1879         portrait/landscape in the windoze print dialog
1881         * objects/makefile.msc : only UML needs to link against
1882         $(GTK2_LIBS) and only custom against $(LIBXML2_LIBS)
1884 2002-12-08  Lars Clausen  <lrclause@cs.uiuc.edu>
1886         * objects/standard/ellipse.c (ellipse_distance_from): 
1887         * lib/geometry.c (distance_ellipse_point): Ellipse now uses the
1888         correct distance function.  Could be faster, but it's not really
1889         essential. 
1891 2002-12-07  Lars Clausen <lrclause@cs.uiuc.edu>
1893         * lib/font.c: Changed global_size_one to more correct 28.35.
1894         Looks better, too.
1896         * app/load_save.c:
1897         * lib/dia_xml.h: 
1898         * lib/dia_xml.c: Removed pretty print hack, the libxml thing works
1899         after all.
1901 2002-12-07  Hans Breuer  <hans@breuer.org>
1903         * lib/widgets.c : g_file_get_contents() silently assumes
1904         a binary file. Reflect when creating the font_menu file
1905         to get rid of junk in font menus
1907 2002-12-06  Hans Breuer  <hans@breuer.org>
1909         * app/diapsrenderer.[hc] app/diapsft2renderer.[hc] :
1910         removed 0xD 0xD 0xA line ends which get created by
1911         cvs if windoze line ends 0xD 0xA are checked in from
1912         *nix and checked out on win32.
1914         * app/preferences.c : changed toolbox_on_top default to
1915         false. It is currently not possible to change the behaviour
1916         at runtime, at least not on win32.
1918         * lib/dialibartrenderer.c : bug #94791 'rendering to 
1919         bitmap without PangoFt2' got delayed to milestone future 
1920         so wrap libart text rendering into PANGO_WIN32_FUTURE. 
1921         It is not available without my Pango patch in bugzilla.
1923         * lib/font.c : added comment to global_size_one and adapt
1924         the arbitrary size scaling in dia_font_build_layout() for
1925         win32, too. This is needed to get an acceptable font size 
1926         approximation for Dia 0.90 and earlier files.
1927         Also #include "message.h".
1929         * app/makfile.msc app/dia.def lib/makefile.msc lib/libdia.def :
1930         reflect movement of group.[hc]
1931         * lib/group.h : export group_type which gets used by app/*
1933         * lib/diagtkfontsel.c : added #undef GTK_DISABLE_DEPRECATED
1934         to get the GtkTypeInfo definition
1936         * plug-ins/makefile.msc : dxf and xfig don't need to link
1937         against app/ anymore now that group is moved to lib/
1939         * plug-ins/python/pydia-render.c : remove massive leaking
1940         of self, i.e. PyDiaRenderer
1942         *  plug-ins/python/makefile.msc : remove linking against
1943         GTK libs
1945 2002-12-06  Lars Clausen  <lrclause@cs.uiuc.edu>
1947         * objects/standard/line.c: Removed properties options for gaps,
1948         until release is done.
1950         * configure.in: Check for freetype version.
1952         * lib/text.c (text_insert_char): Fixed small buffer overflow for
1953         length = 0.
1955         * lib/dialibartrenderer.c (draw_string): Removed debugging printf.
1957         * app/diapsft2renderer.h: 
1958         * app/diapsft2renderer.c: 
1959         * app/diapsrenderer.h: 
1960         * app/diapsrenderer.c: Split ps rendering into standard and freetype.
1962         * app/render_eps.c (export_eps, new_psprint_renderer): Using
1963         PS_FT2 renderer when available.  Old render stuff killed.  Yay!
1965         * lib/properties.h: Fixed bad frame end def.
1967         * app/Makefile.am (dia_core_files): Added diapsft2renderer.[ch].
1969         * lib/dia_xml.c (data_add_string): Avoid #-less strings.
1970         
1971         * objects/bondgraph/Makefile.am: Removed unneeded EXTRA_DIST.
1973 2002-12-05  Lars Clausen  <lrclause@cs.uiuc.edu>
1975         * lib/font.c: Now checking for the proper dia-style standard fonts.
1977         * lib/Makefile.am: 
1978         * app/Makefile.am: Moving group.[ch]
1980         * plug-ins/dxf/dxf-import.c: 
1981         * plug-ins/xfig/xfig-import.c: 
1982         * plug-ins/xfig/xfig-export.c: Now can refer directly to group.h.
1984         * app/object_ops.c: 
1985         * app/object_ops.h: 
1986         * lib/object.c (object_list_move_delta, object_copy_list): 
1987         * lib/object.h: Moved some object-related functions from
1988         object_ops to object to assist moving group.c.
1990         * lib/diatypes.h: Added Group typedef.
1992         * lib/group.h: 
1993         * lib/group.c: Moved from app to lib to a) resolve plug-ins
1994         references, and b) make groups more "real" objects.
1996         * lib/Makefile.am (libdia_la_SOURCES): Added diatyps.h
1998 2002-12-03  Lars Clausen <lrclause@cs.uiuc.edu>
2000         * lib/font.c (dia_font_init): Added check that the three standard
2001         fonts exist.
2003 2002-12-02  Lars Clausen  <lrclause@cs.uiuc.edu>
2005         * lib/dia_xml.[ch]:
2006         * app/load_save.c: Linebreaks in dia files, no indentation.
2007         Should help text tools.  xmlNewChild wrapped in diaXmlNewChild for
2008         this. 
2009         
2010         * objects/standard/line.c: Small but important fixes to the line
2011         gap code.
2013         * lib/dia_xml.h: 
2014         * lib/dia_xml.c (diaXmlNewChild): 
2015         * app/load_save.c (diagram_data_write_doc, write_objects): Simple
2016         XML prettyprinting wrapper.
2018 2002-12-03  Steffen Macke <sdteffen@web.de>
2020         * shapes/Cisco/Makefile.am:
2021         * shapes/Cisco/*.shape: finished conversion of Cisco icons
2022         to *.png
2023         
2024 2002-12-02  Steffen Macke <sdteffen@web.de>
2026         * doc/en/Makefile.am:
2027         * doc/en/usage-objects.sgml:
2028         * doc/en/graphics/line_icon.png: (new) added line icon
2029         
2030 2002-12-02  Lars Clausen  <lrclause@cs.uiuc.edu>
2032         * objects/standard/line.c: Binary search object edge line gap.
2034 2002-12-01  Lars Clausen  <lrclause@cs.uiuc.edu>
2036         * configure.in: Added Cisco makefile, sorted Makefiles list.
2038         * shapes/Makefile.am (SUBDIRS): Added Cisco dir
2040         * configure.in: Now checks for availability of PangoFT2 and
2041         FreeType, raising an error if not found.
2043         * app/Makefile.am (dia_core_files): Adding diapsft2renderer from
2044         Hans.
2046 2002-12-01  Steffen Macke <sdteffen@web.de>
2047         
2048         * doc/en/usage-loadsave.sgml: updated information on import
2049         and export formats
2050         
2051 2002-11-28  Lars Clausen  <lrclause@cs.uiuc.edu>
2053         * app/commands.c (edit_copy_callback): Freeing copy_list.
2055 2002-11-28  Steffen Macke <sdteffen@web.de>
2056         
2057         * app/render_libart.c: art_config.h was included twice
2059 2002-11-27  Lars Clausen  <lrclause@cs.uiuc.edu>
2061         * sheets/.cvsignore: More ignorance.
2063         * lib/diagdkrenderer.c (draw_string): Removed silly #ifdef 1.
2065         * lib/prop_widgets.h: Two (currently unused) settings for frame
2066         foldability.
2068         * lib/prop_widgets.c (frame_beginprop_get_widget): Frames are now
2069         (by default) foldable. 
2071         * lib/propinternals.h: 
2072         * lib/propdialogs.c (prop_dialog_add_raw_with_flags): Way to add
2073         widgets in a more controlled manner.
2075         * objects/standard/line.c (line_update_data): Line gap things
2076         inserted.  Can do xeyes now:)
2078 2002-11-26  Christian Neumair  <chris@gnome-de.org>
2080         * .cvsignore: Changed.
2081         * objects/bondgraph/.cvsignore, plug-ins/metapost/.cvsignore,
2082         plug-ins/xslt/.cvsignore, shapes/Assorted/.cvsignore, shapes/Misc/.cvsignore:
2083         Added.
2085 2002-11-26  Lars Clausen  <lrclause@cs.uiuc.edu>
2087         * app/pixmaps/delete.xpm: Trashcan stolen from Gimp.
2089         * lib/widgets.c (dia_font_selector_get_font): Fixed wrong name
2090         passing to font hash.
2092         * app/filedlg.c (file_save_as_ok_callback): Check that filename is
2093         utf-8 or locale-convertible before adding to dialog text.  This
2094         probably needs done in a number of places where we get text from
2095         the environment and send it to GTK to display.
2097         * lib/widgets.c: Fixed case problems for font menu entries.
2099         * objects/SADT/annotation.c: Don't run the event test (but leave
2100         it here for inspiration).
2102         * lib/widgets.c: 
2103         * lib/widgets.h: Allowing setting preview text for fonts.
2105 2002-11-26  Lars Clausen  <lrclause@cs.uiuc.edu>
2107         * objects/bondgraph/Makefile.am: 
2108         * objects/bondgraph/bondgraph.c: 
2109         * configure.in: 
2110         * objects/Makefile.am: Added bond graph dir.
2112 2002-11-26  Lars Clausen  <lrclause@cs.uiuc.edu>
2114         * lib/text.c (text_calc_boundingbox, text_draw): Better cursor size.
2116 2002-11-25  Lars Clausen  <lrclause@cs.uiuc.edu>
2118         * lib/text.c (text_calc_boundingbox, text_draw): Better cursor
2119         positioning. 
2121         * app/diapsrenderer.c: Freetype rendering is back in force.
2123         * app/disp_callbacks.c: Added missing updates for pre-text-change.
2125 2002-11-25  David Hoover <jazzdaq@yahoo.com>
2127         * app/render_libart.c: Added missing #include line for libart.
2129         * lib/geometry.h:
2130         * lib/geometry.c: Added point_convex function.  This computes
2131         points inside a line segment (0 <= alpha <= 1) or outside the
2132         line segment (alpha < 0 | alpha > 1).
2134         * objects/standard/line.c: Line now has additional code/attributes
2135         which permit the line to extend past the line anchors (gap < 0) or
2136         leave a gap without reaching the anchor (gap > 0).  If no gap is
2137         specified, the default gap of 0 will result in identical line
2138         behavior as before.  If the 'fractional' attributes are TRUE, the
2139         gap length is not fixed, but a percentage of the line length.  I
2140         did not know how create the GTK widgets so the gap code currently
2141         cannot be used without adding XML attributes by hand.
2143 2002-11-25  Lars Clausen  <lrclause@cs.uiuc.edu>
2145         * lib/diagdkrenderer.c (draw_string): Removed timing bits.
2147         * lib/Makefile.am (libdia_la_SOURCES): Added fontsel files to SOURCES.
2149 2002-11-24  Lars Clausen  <lrclause@cs.uiuc.edu>
2151         * lib/font.c: Debugging functionality in separate functions.
2153         * lib/widgets.c: Using fontsel with context.
2155         * lib/diagtkfontsel.[ch]: Context-aware copy of the GTK fontsel.
2157         * objects/custom/custom_object.c: Orientation handling for shapes,
2158         patch thanks to Martin Hans <opfinder@gmx.net>.
2160         * objects/standard/zigzagline.c (zigzagline_move_handle): Starting
2161         work on even better orientation handling.
2163         * app/menus.c (menus_get_item_from_path): Fixed sily warnings from
2164         casting NULL pointers.  Should be unnecessary in an upcoming GTK
2165         release. 
2167 2002-11-18  Lars Clausen  <lrclause@cs.uiuc.edu>
2169         * lib/font.h:
2170         * lib/font.c:
2171         * lib/widgets.c: Now uses correct context to get font families.
2173         * lib/diagdkrenderer.c (get_text_width, draw_string): 
2174         * lib/dialibartrenderer.c (draw_string): 
2175         * lib/font.h: 
2176         * lib/font.c (dia_font_init): Removed old kludgy font name compare.
2177         (dia_font_build_layout): Unified the twiddle factors into a use of
2178         global_size_one.  But I deeply distrust Pango for seeming to
2179         change size of fonts every time I turn my back.
2181         * app/display.c: 
2182         * app/diagram.c: 
2183         * app/menus.c:
2184         * app/menus.h: Updated some more methods to also be more specific
2185         on the types.
2187         * app/menus.h:
2188         * app/recent_files.c: 
2189         Changed to return most specific type, to avoid run-time type errors.
2191         * app/menus.c (menus_get_item_from_path): Non-gnome version now
2192         gets menu_item rather than widget, which works better.
2194 2002-11-17  Cyrille Chépélov  <cyrille@chepelov.org>
2196         * app/display.c: (new_display):
2197         * app/menus.c: (menus_get_item_from_path):
2198         Relying on the tearoff to locate the input methods menu wasn't a
2199         good idea: tearoffs seem to be an endangered species nowadays.
2200         Anyway, the IM menu seems to be working now.
2202         * app/interface.c: hinted the window manager that the toolbox window
2203         is a toolbox window. Not that my (fairly default configuration)
2204         sawfish cares, but other NETWM compliant WMs may.
2206         * app/commands.c: 
2207         * app/defaults.c: 
2208         * app/dia-props.c:
2209         * app/filedlg.c: 
2210         * app/interface.c: 
2211         * app/layer_dialog.c: 
2212         * app/linewidth_area.c: 
2213         * app/properties.c: 
2214         * app/sheets_dialog.c: 
2215         * app/splash.c: 
2217         The GTK doc says to avoir gtk_window_set_wmclass() and 
2218         gtk_window_set_policy(), and use gtk_window_set_role() and
2219         gtk_window_set_resizable(), respectively.
2220         
2221         * app/preferences.c: (prefs_create_dialog):
2222         * app/preferences.h:
2223         * app/display.c: (display_set_active):
2224         Added a preference to have the toolbox hover over diagram windows.
2225                 
2226 2002-11-12  Lars Clausen  <lrclause@cs.uiuc.edu>
2228         * lib/diagdkrenderer.c (get_text_width, draw_string):
2229         Freetype-based string drawing now works.  Not very fast, though.
2230         I wish I could use the graphics card for this:(  I'm doing three
2231         bitmap loops where I should be doing one.  The size is not correct
2232         either, despite having get_text_width give the right thing.
2234 2002-10-21  Lars Clausen  <lrclause@cs.uiuc.edu>
2236         * app/connectionpoint_ops.c (diagram_update_connections_object):
2237         Allows more than one connectionpoint on an object to be moved at a
2238         time (bug #96306).
2240 2002-10-18  Stanislav Brabec  <sbrabec@suse.cz>
2242         * configure.in: Added cs to ALL_LINGUAS.
2244 2002-10-17  Lars Clausen  <lrclause@cs.uiuc.edu>
2246         * app/paginate_psprint.c: Removed unnecessary decl of autosave
2247         stuff.
2249         * app/display.c (ddisplay_set_renderer): Calls to begin/end render.
2251         * app/export_png.c (export_png_ok): Saving more variables from the
2252         evil setjmp.
2254 2002-10-16  Lars Clausen  <lrclause@cs.uiuc.edu>
2256         * lib/dialibartrenderer.c (begin_render):
2257         (end_render): Correct pushing and popping of font contexts.
2258         (draw_string): Double zooming eliminated, strange twiddle factor
2259         introduced (grumble).  Close to working now, but there are still
2260         strange differences from font to font.  In particular, some fonts
2261         really mess with the cursor and extents.
2263         * app/render_eps.c (export_eps): 
2264         * app/diapsrenderer.c (dia_ps_renderer_finalize): 
2265         Fixed file closing confusion, no longer dependent on PS/EPS.
2267         * app/diagram.c (diagram_place_down_selected) 
2268         (diagram_place_up_selected): Now implemented.
2270         * lib/font.c (dia_font_init): 
2271         * lib/font.h: 
2272         Redesigned the font init/context pushing code.  Start of fix for
2273         font name differences.
2274         
2275 2002-10-15  Kjartan Maraas  <kmaraas@gnome.org>
2277         * app/sheets_dialog_callbacks.c: Fix a typo.
2278         
2279 2002-10-15  Hans Breuer  <hans@breuer.org>
2281         * app/diapsrenderer.[hc] : (new files, old content :-)
2282         simple base class for post script rendering. Does neither 
2283         use Pango/FT2 nor does it handle non latin1 characters. 
2284         The fancy stuff which nowadays appears to be needed should 
2285         probably be done in derived class(es)
2287         * app/makefile.msc app/Makefile.am : added new files
2289         * app/paginate_psrint.c : re-enabled and used as test
2290         for the simple ps renderer above.
2292         * app/render_eps.[hc] : ripped out common ps code and
2293         moved to DiaPsRenderer. The rest of the file is mostly
2294         disabled. And I don't understand enough of it to 
2295         change port it.
2297         * app/diaepsrenderer.h : short lived, removed.
2299 2002-10-15  Lars Clausen  <lrclause@cs.uiuc.edu>
2301         * lib/plug-ins.c (dia_register_plugin): Don't try to load libdia
2302         as a plugin (thanks to Torben Nielsen).
2304 2002-10-14  Lars Clausen  <lrclause@cs.uiuc.edu>
2306         * app/diaepsrenderer.h: 
2307         * app/render_eps.h: 
2308         * app/paginate_psprint.c: 
2309         #ifdef'd out enough ps stuff to allow compile.  Now we just need
2310         to convert it.
2311         
2312 2002-10-12  Hans Breuer  <hans@breuer.org>
2314         [last plug-in ported]
2316         * plug-ins/xfig/xfig-export.c : ported to new renderer api
2318         * plug-ins/xfig/xfig-import.c(fig_create_object) : need to
2319         scale color values to [0..1.0] to properly reconstruct
2320         user colors
2322         * plug-ins/xfig/xfig-common.c : some cleaning
2324 2002-10-12  Hans Breuer  <hans@breuer.org>
2326         [decrease inter-plug-in-dependencies]
2328         * objects/custom/shape_info.[hc] : move parse_style()
2329         to lib/dia_svg.[hc] as dia_svg_parse_style(); Namespace
2330         the related structs and constants.
2331         * objects/custom/custom_object.c : reflect namespace
2332         changes
2334         * lib/dia_svg.[hc] : new files
2335         * lib/makefile.msc lib/Makefile.am : add new files
2336         * lib/libdia.def : updated externals
2338         * plug-ins/svg/svg-import.c : use dia_svg_parse_style()
2340         * plug-ins/svg/svg.c : enable svg import for win32 (and
2341         probably for other non ELF builds)
2343         * plug-ins/makefile.msc : enable svg import
2345 2002-10-11  Hans Breuer  <hans@breuer.org>
2347         * plug-ins/metapost/render_metapost.[hc] : ported
2349         * plug-ins/pstricks/render_pstricks.[hc] : dito
2351 2002-10-11  Hans Breuer  <hans@breuer.org>
2353         * plug-ins/cgm/cgm.c : ported, appears to work as before,
2354         but graphic apps available to me can't import the generated 
2355         files (the could not with Dia-0.90 cgm as well) ...
2357         * plug-ins/dxf/dxf-export.c : Ported to new renderer api.
2358         Removed all those function which did emulate 'complex' 
2359         drawing ops with basic ones (e.g. rect by line) cause this
2360         stuff is already provided by the base class
2361         * plug-ins/dxf/dxf-import.c : removed render.h include
2363         * plug-ins/python/pydia-font.[hc]
2364           plug-ins/python/pydia-text.c : finally ported to new font api
2366         * plug-ins/python/pydia-layer.c : add extra parameter
2367         to layer_find_closest_connectionpoint()
2369         * plug-ins/python/pydia-render.c : ported to DiaRenderer api
2371         * plug-ins/python/python.c : added missing copyright notice
2373         * plug-ins/hpg/hpgl.c plug-ins/wpg/wpg.c plug-ins/wmf/wmf.cpp : 
2374         actually use the renderers set_font implementation
2376         * plug-ins/renderer.inc : unused now, removed
2377         * plug-ins/Makefile.am : reflect it
2379 2002-10-08  Hans Breuer  <hans@breuer.org>
2381         * app/render_gdk.c : don't add the InteractiveRenderer
2382         interface multiple times (it's added to the type, not
2383         the object)
2384         * app/render_libart.c : dito. It's currently added
2385         unconditional cause eport_png uses it, but claims
2386         to be non-interactive. Probably set_size should be moved
2387         to the DiaRenderer interface.
2389         * lib/dialibartrenderer.c : add implementations for
2390         get_<width|height>_pixels. Libart rendering works again.
2391         DiaLibartRenderer::draw_image : use dia_image_rowstride()
2392         instead of width*3
2394         * lib/diatransform.c(dia_transform_coords_double) :
2395         don't ROUND() the returned values
2397         * plug-ins/pixbuf/pixbuf.c : added import function. It
2398         simply creates a wrapping "Standard - Image" object.
2400         * plug-ins/shape/shape-export.c : use the more direct
2401         method to call base class methods
2403 2002-10-07  Lars Clausen  <lrclause@cs.uiuc.edu>
2405         * lib/font.c (dia_font_init): Changed dia_font_init to return old
2406         pango context, to allow stacked contexts (for printing while
2407         antialiased).
2408         
2409         * lib/arrows.h
2410         * lib/bezier_conn.h
2411         * lib/beziershape.h
2412         * lib/boundingbox.h
2413         * lib/color.h
2414         * lib/connection.h
2415         * lib/connectionpoint.h
2416         * lib/create.h
2417         * lib/dia_image.h
2418         * lib/diagdkrenderer.h
2419         * lib/diagramdata.h
2420         * lib/dialibartrenderer.h
2421         * lib/diamenu.h
2422         * lib/diarenderer.h
2423         * lib/diasvgrenderer.h
2424         * lib/diatransform.h
2425         * lib/element.h
2426         * lib/filter.h
2427         * lib/focus.h
2428         * lib/font.h
2429         * lib/geometry.h
2430         * lib/handle.h
2431         * lib/neworth_conn.h
2432         * lib/objchange.h
2433         * lib/object.h
2434         * lib/orth_conn.h
2435         * lib/paper.h
2436         * lib/plug-ins.h
2437         * lib/poly_conn.h
2438         * lib/polyshape.h
2439         * lib/properties.h
2440         * lib/ps-utf8.h
2441         * lib/sheet.h
2442         * lib/text.h
2443         * lib/textattr.h
2444         * lib/widgets.h
2445         * lib/diatypes.h
2446         Moved all externally visible struct typedefs into diatypes.h, as
2447         per Hans' suggestions.
2449 2002-10-07  Steffen Macke <sdteffen@web.de>
2451         * lib/Makefile.am: removed a '\' causing problems
2453 2002-10-07  Hans Breuer  <hans@breuer.org>
2455         [Libart Renderer resurrected; almost it's compiling but
2456          almost instantly crashing :-]
2458         * lib/dialibartrenderer.[hc] : new files, ported to DiaRenderer
2459         * app/render_libart.[hc] : ported to DiaInteractiveRenderer
2460         * lib/diatransform.[hc] : added dia_transform_coords_double()
2462         * app/display.c : the right parameters for new_renderer_libart()
2463         * app/export_png.c : ported, removed the blind Display hack
2465         * app/makefile.msc lib/makefile.msc 
2466           lib/Makefile.am : updated
2468         * lib/dia<|gdk|interactive>renderer.c : properly copyrighted
2470 2002-10-06  Hans Breuer  <hans@breuer.org>
2472         * plug-ins/pixbuf/pixbuf.c : (new file)
2473         there is a new export plug-in called 'Pixbuf' which uses 
2474         DiaGdkRenderer to export to gdk-pixbuf supported bitmap
2475         formats (currently only PNG and JPEG).
2477 2002-10-06  Hans Breuer  <hans@breuer.org>
2479         See also: 
2480         http://mail.gnome.org/archives/dia-list/2002-October/msg00027.html
2482         * lib/dia-enums.h lib/diatransform.[hc]
2483           lib/diarenderer.[hc] lib/diainteractiverenderer.c
2484           lib/diagdkrenderer.[hc] lib/diasvgrenderer.[hc]
2485         : new files 
2487         * lib/makefile.msc lib/makefile.am : added new files
2489         * lib/plug-ins.c : g_module_error() returns a locale
2490         string, convert to utf8 before further usage 
2492         * lib/render.h : #error out. Everything including this
2493         needs porting
2494         * lib/*.[hc] : ported to new renderer api
2496         * app/diaepsrenderer.h : unfinished DiaEpsRenderer interface
2497         just to make the rest compile
2498         * app/render_eps.c : temporary disabled all of this
2499         * app/render_eps.h : removed RendererEPS
2501         * app/render_gdk.[hc] : a small wrapper around the new
2502         DiaGdkRenderer form lib/*
2504         * app/render_libart.h : removed RenderLibart definition
2505         * app/render_libart.c : not yet ported to new DiaRenderer
2506         but having an implementation to untie form FT2 dependency
2507         at least on win32. It is using new Pango api form bug #94791
2509         * app/render_pixmap.[hc] : a small wrapper around the new
2510         DiaGdkRenderer form lib/*
2512         * app/display.h : removed render_*.h includes
2513         * app/display.c : the only place where specific 
2514         renderers need to be known
2516         * app/connectionpoint_ops.c app/grid.c app/handle_ops.c
2517         use new DiaInteractiveRenderer interface
2519         * app/*.c : ported to new renderer api
2520         * object/*/*.c : ported to new renderer api
2521         s/render.h/diarenderer.h/
2522         s/Renderer/DiaRenderer/
2523         s/renderer->ops/renderer_ops/
2524         add in every draw method:
2525         DiaRendererClass *renderer_ops = DIA_RENDERER_GET_CLASS (renderer);
2527         * plug-ins/hpgl/hpgl.c : 
2528           plug-ins/wmf/wmf.cpp 
2529           plug-ins/wpg/wpg.c : ported to be DiaRenderer based
2530         * plug-ins/shape/shape-export.c
2531           plug-ins/svg/render_svg.c : ported to be DiaSvgRenderer based
2532           (nice how small these files became :-)
2534 2002-09-28  Hans Breuer  <hans@breuer.org>
2536         * */makefile.msc : updated
2538         * app/defaults.c : don't gdk_invalidate_rect(NULL)
2539         * app/disp_callbacks.c : 
2540         can't cast GtkWindow to GdkWindow, use shell->window
2541         (ddisplay_unrealize) don't use already unrefed im_context
2542         * app/display.c :
2543         can't cast from GtkMenu to GtkMenuItem
2544         (ddisp_destroy) : mark im_context as unrefed
2546         * lib/dia_xml (data_font) : prefer new font format over old one
2547         (data_add_font) : write the legacy name to allow file exchange
2548         with pre Pango versions of Dia, which would otherwise crash 
2549         on missing font 'name' attribute.
2550         * lib/font.c (dia_font_get_legacy_name) : improved implementation
2551         to get a better match.
2553         * lib/libdia.def : updated
2555         * lib/messages.c : don't gdk_widget_show(NULL)
2557         * lib/prop_text.c : don't gtk_entry_set_text() with NULL string 
2559         [make Dia compile, link _and_ work with mingw/gcc3.2]
2561         * config.h.win32 : #define LIBXML, this gets defined from libxml
2562         header but only for _MSC_VER. The mingw build did access an 
2563         unitialized function pointer for xmlFree.
2565         * */makefile.mingw : updated (some plug-ins have build issues)
2566         
2567         * lib/handle.h lib/object.h :   there appears to be no 
2568         forward declaration of the form 
2569                 typedef enum _HandleId HandleId 
2570         (at least not with GCC 3.2 for C++) ../lib/handle.h:22: 
2571         use of enum `_HandleId' without previous declaration
2573         * app/paginate_gdiprint.cpp : added a hack to avoid g++
2574         naming conflict on 'export'
2576         * app/paginate_gdiprint.h : forward declare Diagram
2578         * objects/SADT/annotaion.c : use g_random_double()
2580 2002-09-26  Lars Clausen  <lrclause@cs.uiuc.edu>
2582         * app/modify_tool.c: Made motion not happen until sufficiently
2583         large or past double-click interval, to avoid accidental moving
2584         when doubleclicking.  Got the double-click time right, and fixed
2585         some issues with release.  There are some corner cases that may
2586         exhibit strange behaviour, will look at those later.  Nah, let's
2587         not care about those, they are rare and not dangerous.
2589 2002-09-26  Cyrille Chépélov  <cyrille@chepelov.org>
2591         * app/layer_dialog.c: 
2592         * app/load_save.c: 
2593         * plug-ins/dxf/dxf-import.c: 
2594         * plug-ins/python/pydia-diagram.c: 
2595         * lib/diagramdata.c:
2596         * lib/diagramdata.h:
2597         Improved the consistency of the obj->parent_layer backlinks (esp.
2598         during reloads)
2600         * lib/Makefile.am:
2601         * lib/dummy_dep.h:
2602         * lib/dynamic_obj.[ch] (NEW):
2603         * app/Makefile.am:
2604         * app/app_procs.c: 
2605         * app/dynamic_refresh.[ch] (NEW):
2606         * objects/Misc/analog_clock.c: 
2607         Added support for dynamic refresh (animated objects).
2608                 
2609 2002-09-25  Cyrille Chépélov  <cyrille@chepelov.org>
2611         Patch from Owen Taylor <otaylor@redhat.com>:    
2612         * doc/en/Makefile.am:
2613         * doc/en/dia-manual.sgml:
2614         * doc/en/usage-objects.sgml:
2615         * doc/en/usage-quickstart.sgml:
2616         * doc/pl/Makefile.am:
2617         * doc/pl/dia-manual.sgml:
2618         * doc/pl/usage-objects.sgml:
2619         * doc/pl/usage-quickstart.sgml:
2621         - Change the DTD declration from an outdated GNOME one to a
2622         standard DTD.
2623         
2624         - Remove close tags for <graphics> which aren't allowed for
2625         docbook SGML
2626         
2627         - A hacky fix for a problem where some versions of db2html don't
2628         create *.css files. (If *.css doesn't match anything, then you get
2629         the global explicitely.)
2631         (Closes: #92061)
2632         
2633 2002-09-24  Cyrille Chépélov  <cyrille@chepelov.org>
2635         * objects/custom/custom_object.c: 
2636         * objects/custom/shape_info.[ch]: GE_TEXT display lists elements 
2637         were never properly prepared for use when reloading a shape with
2638         <svg:text> elements. Thanks to Scott Frazer <frazer@nc.rr.com> for
2639         reporting the problem and coming up with a fix! (Closes: #93974)
2641         * app/menus.c: patch from Alan Horkan <horkana@tcd.ie>: review
2642         the menu shortcuts towards better GNOME HIG compliance (Closes: #87157)
2644         * app/menus.c:
2645         * app/display.c: updated menu item paths Alan's patch had moved.
2646         
2647         * app/interface.c: Fixed a crash when gdk-pixbuf doesn't want to
2648         load the sheet-provided icon (libpng versions mismatch, grrr.).
2649         
2650         * configure.in:
2651         * objects/Makefile.am:
2652         * objects/Misc/Makefile.am (NEW):
2653         * objects/Misc/libmisc.c (NEW):
2654         * objects/Misc/analog_clock.c (NEW):
2655         * objects/Misc/pixmaps/analog_clock.xpm (NEW):
2656         * sheets/Misc.sheet.in: just a little experiment...
2658 2002-09-23  Cyrille Chepelov  <cyrille@chepelov.org>
2660         * plug-ins/xlst/Makefile.am: found a way to silence automake while
2661         not forcing everyone to build using libxslt.
2663         * lib/font.c: 
2664         * lib/message.c:
2665         * lib/object_defaults.c:
2666         * lib/intl.[ch]:
2667         * lib/render.c:
2668         * lib/properties.[ch]:
2669         * lib/propobject.c:
2670         * objects/standard/box.c: 
2671         * objects/UML/state_term.c:
2672         * objects/FS/box.c:
2673         * objects/FS/flow-ortho.c:
2674         * app/app_procs.c:
2675         * app/autosave.c:       
2676         * app/commands.c:
2677         * app/diagram_tree.c:
2678         * app/display.c:
2679         * app/disp_callbacks.c:
2680         * app/export_png.c:
2681         * app/filedlg.c:
2682         * app/lineprops_area.c:
2683         * app/menus.c:  
2684         * app/preferences.c:
2685         * app/render_eps.c:     
2686         * app/sheets.c:
2687         * app/sheets_dialog_callbacks.c:
2688         * plug-ins/xslt/xslt.c:
2689         * plug-ins/metapost/render_metapost.c:
2690         * plug-ins/xfig/xfig-export.c:
2691         * plug-ins/shape/shape-export.c:
2692         
2693         Killed most gcc-3.2 warnings (const-correctness and derived warnings, 
2694         unused variables, mostly)
2696         * app/display.c:
2697         * app/menus.c: enabled GTK Input Methods (thanks Lars!)
2699         * app/Makefile.am: modified run_dia.sh so that we recover the
2700         ability to run a debugger despite libtool's hacks.
2702         * plug-ins/dxf/Makefile.am: 
2703         * app/Makefile.am
2704         "make distcheck" fixes.
2705         
2706 2002-09-19  Lars Clausen  <lrclause@cs.uiuc.edu>
2708         * objects/UML/uml.c (uml_get_operation_string): Patch from Mauf
2709         <mfranzoni@madd.it>:  Check for the type being NULL.
2711 2002-09-16  Lars Clausen  <lrclause@cs.uiuc.edu>
2713         * app/render_eps.c (set_font): Re-tweaked font size for printing.
2715 2002-09-12  Cyrille Chepelov  <cyrille@chepelov.org>
2717         Patch from Angus Ainslie <angusa@deltatee.com>:
2718         * plug-ins/dxf/dxf-import.c:
2719         * plug-ins/dxf/autocad_pal.h: Import from visio 2002 improvements.
2721         (plus a couple extra fixes by me, such as the removal of printf's,
2722         adapting for recent changes, and killed a couple warnings) 
2724         * app/authors.h: a 60K patch isn't insignificant, is it?
2725         
2726 2002-09-09  Tor Lillqvist  <tml@iki.fi>
2728         * configure.in: Check for both pangoft2 (using PKG_CHECK_MODULES,
2729         as before) and -lfreetype (using AC_CHECK_LIB). At least on
2730         Solaris with Sun's compiler (Forte C), you need to link also the
2731         dia application with -lfreetype, even if it is implicitly linked
2732         to by -lpangoft2. Rename FREETYPE_CFLAGS and _LIBS to PANGOFT2_*,
2733         which is what they actually mean. Use FREETYPE_LIBS for
2734         -lfreetype.
2736         Don't look for libsunmath if isinf() is not found in math.h (as on
2737         Solaris). The sunmath library is part of Forte C and not present
2738         on all machines. Besides, even if isinf was found in libsunmath,
2739         we didn't use it in the Makefile.am.
2740         
2741         Fix a couple of bashisms.
2743         AC_SUBST also Z_LIBS, need to link the dia application to -lz,
2744         too, on Solaris with Forte C.
2746         Don't try to use the gcc flags with other compilers.
2747         DIA_CHECK_CFLAG gives a false indication that Forte C understands
2748         the gcc -f switches, but in fact they get interpreted meaning
2749         something completely different.
2751         Define the automake conditional HAVE_CGC.
2752         
2753         * app/Makefile.am (dia_LDADD): Add Z_LIBS and FREETYPE_LIBS.
2755         Use -export-dynamic only with gcc.
2757         * */Makefile.am
2758         * */*/Makefile.am: Modify according to the FREETYPE_CFLAGS -> 
2759         PANGOFT2_CFLAGS rename.
2761         * lib/geometry.h: Drop HAVE_SUNMATH_H and <sunmath.h> per above.
2762         
2763         * lib/dia_xml.c: Include geometry.h for the isinf() stuff on
2764         Solaris.
2766         * lib/paper.c: Workaround for gccism: Can't use inline this way with
2767         Forte C, either.
2769 2002-09-08  Cyrille Chepelov  <cyrille@chepelov.org>
2771         * lib/text.c(set_string): fixed a memory leak (char* ain't no
2772         std::auto_ptr<char> !).
2774         * app/display.[ch]:
2775         * app/interface.[ch]:
2776         * app/ddisp_callbacks.[ch]: Added some basic support for input 
2777         methods (GtkIMContext-based)
2779         * lib/Makefile.am:
2780         * app/Makefile.am: made libdia a shared object (per Tor
2781         Lillqvist's suggestion/request), to cope for platforms with a less
2782         than par dynamic library loader.
2784         * app/display.c: disabled the input method menu (I really don't
2785         see where and how to put them. Blame Frozen Bubble )
2786         
2787 2002-09-06  Lars Clausen  <lrclause@cs.uiuc.edu>
2789         * objects/flowchart/box.c (box_update_data): Made resizing
2790         possible again (only set width & height when resized too small).
2792         Patch from Soeren Sandmann <sandmann@daimi.au.dk>:
2794         * app/disp_callbacks.c (ddisplay_canvas_events): Handle
2795         GdkScrollEvents.
2796         
2797 2002-09-05  Cyrille Chepelov  <cyrille@chepelov.org>
2799         * app/authors.h: now showing Akira TAGOH's name in the native script.
2801 2002-09-01  Lars Clausen  <lrclause@cs.uiuc.edu>
2803         * plug-ins/xslt/xslt.c: Removed glib warning for unset
2804         DIA_PLUGIN_PATH.
2806 2002-09-01  Cyrille Chepelov  <cyrille@chepelov.org>
2808         * plug-ins/svg/render_svg.c: Applied (reversed...) patch from
2809         Mike Sowka <msowka@rogers.com>. This fixes a problem with the
2810         sweep flag in arcs.
2812 2002-08-31  Lars Clausen  <lrclause@cs.uiuc.edu>
2814         * objects/UML/class.c: Fixed showing of empty stereotypes and got
2815         the string placed correctly.
2817 2002-08-30  Hans Breuer  <hans@breuer.org>
2819         * lib/font.c (dia_font_get_style) : don't shift already
2820         shifted DIA_FONT values.
2822         * lib/libdia.def : updated externals
2824         * app/disp_callbacks.c : on win32 GdkEventKey::string already
2825         is in UTF-8. (Longterm this probably should be handled on the
2826         gtk api level)
2828         * app/command.[hc] app/display.[hc] app/menus.c : add code to 
2829         switch display renderers again. The libart renderer is very 
2830         useful for win9x with it's limited GDI.
2832         * app/render_gdk.c : use g_warning instead of printf which gets
2833         nowhere on win32 (non console apps)
2835         * app/render_libart.c : make it compile without FREETYPE
2837         * objects/makefile.msc plug-ins/makefile.msc : added clean target
2839 2002-08-29  Lars Clausen  <lrclause@cs.uiuc.edu>
2841         * app/render_eps.c (postscript_draw_contour): Debugging statement
2842         that allowed me to figure out font problems.
2844         * lib/widgets.c (dia_font_selector_set_styles): Use radio menu
2845         items for font styles.
2847         * objects/FS/flow-poly.c: 
2848         * objects/FS/flow-ortho.c: 
2849         * objects/FS/flow.c: Further conversion away from GTK dialogs.
2850         Can't set a default label right now:(
2852         * app/interface.c (fill_sheet_wbox): Added initialization for mask.
2854 2002-08-27  Cyrille Chepelov  <cyrille@chepelov.org>
2855         Patch from Andrew Ferrier  <andrew@new-destiny.co.uk>:
2857         * Makefile.am: rules relating to AUTHORS and THANKS
2858         altered.
2859         * AUTHORS: file content changed to more accurately
2860         reflect guideline requirements.
2861         * TODO: warning added about Gnome BTS.
2862         * KNOWN_BUGS: warning added about Gnome BTS.
2864         ---
2866         * AUTHORS: added full copyright info.
2867         * mkauthors-placeholder: (removed) 
2868         
2869 2002-08-27  Lars Clausen  <lrclause@cs.uiuc.edu>
2871         * app/paginate_psprint.c (print_page): Fixed text printing after
2872         tip from Dov Grobgeld.
2874 2002-08-26  Lars Clausen  <lrclause@cs.uiuc.edu>
2876         * app/paginate_psprint.c (print_page): Fixed color of clip
2877         region.
2879 2002-08-26  Cyrille Chepelov  <cyrille@chepelov.org>
2881         * sheets/Makefile.am: enabled intltool-merge translation cache for
2882         sheets.
2884         * Makefile.am:
2885         * mkauthors-placeholder:
2886         * AUTHORS: revived that file (in a placeholder form) so that
2887         automake stops yelling.
2888         (derived from a patch by Andrew Ferrier <andrew@new-destiny.co.uk>) 
2889         (Closes: #91144)
2891         Heh, by the way, thanks Christophe. I feel better now.
2892         
2893 2002-08-25  Christophe Merlet  <christophe@merlet.net>
2895         * app/command.c: Removed invalid multibyte sequence in Chepelov.
2897 2002-08-24  Lars Clausen  <lrclause@cs.uiuc.edu>
2899         * lib/dia_image.c (dia_image_rgb_data): 
2900         Bugfixes in image data retrieval.
2901         
2902         * app/render_eps.c: Refactoring of new_*_renderer.
2904 2002-08-23  Lars Clausen  <lrclause@cs.uiuc.edu>
2906         * app/render_eps.c: 
2907         * lib/dia_image.h: 
2908         * lib/dia_image.c: Support for rowstride != width (odd width images)
2910 2002-08-20  Lars Clausen  <lrclause@cs.uiuc.edu>
2912         * lib/paper.c (get_paper_info): Fixed NULL prefs problem.
2913         * plug-ins/xfig/xfig-import.c: Removed assertion.
2915 2002-08-18  Lars Clausen  <lrclause@cs.uiuc.edu>
2917         * lib/paper.c: Removed app/preferences.h reference.
2919 2002-08-14  Lars Clausen  <lrclause@cs.uiuc.edu>
2921         * plug-ins/svg/svg-import.c: 
2922         * plug-ins/xfig/xfig-import.c: 
2923         * lib/Makefile.am (libdia_a_SOURCES): 
2924         * objects/standard/Makefile.am (libstandard_objects_la_SOURCES): 
2925         * lib/create.h:
2926         * objects/standard/create.h:
2927         * objects/standard/polygon.c (polygon_create): 
2928         * objects/standard/polyline.c (polyline_create): 
2929         * objects/standard/beziergon.c (beziergon_create): 
2930         * objects/standard/bezier.c (bezierline_create): 
2931         Moving create.h into lib.
2933 2002-08-13  Lars Clausen  <lrclause@cs.uiuc.edu>
2935         * app/render_libart.[ch]: Work on PNG font export.  Something's
2936         still fishy with the scaling, I don't get it.
2938         * app/display.c: 
2939         * app/interface.c: Replaced broken zoom combo with entry+menu.
2940         Now works beautifully.  Removed WITHOUT_ZOOM_COMBO stuff.
2942         * app/render_gdk.c (get_text_width): Checks for validity of text.
2943         Temporary help while debugging input -- should only activate on
2944         invalid input.
2946         * objects/SADT/annotation.c: 
2947         * objects/GRAFCET/transition.c: 
2948         * objects/FS/function.c: Removal of gtk.h include.
2950         * objects/UML/state.c (state_load): Warnings about using State
2951         object for initial/final states.
2953         * plug-ins/cgm/cgm.c (init_fonts): Proper Pango interfacing.
2955 2002-08-12  Lars Clausen  <lrclause@cs.uiuc.edu>
2957         * app/render_eps.c: Text rendering that scales correctly.  Too bad
2958         the standard fonts don't get selected right.
2960 2002-08-09  Lars Clausen  <lrclause@cs.uiuc.edu>
2962         * lib/diagramdata.h: 
2963         * lib/paper.c (get_paper_info): 
2964         * lib/paper.h: 
2965         * plug-ins/xfig/xfig-import.c: 
2966         Committed before testing.  I am so embarrased.  This compiles, now
2967         that the includes are in the right order.
2968         
2969         * app/diagram.c (diagram_init): 
2970         * app/app_procs.c (do_convert): 
2971         * app/preferences.h: 
2972         * lib/diagramdata.h: 
2973         * lib/diagramdata.c (new_diagram_data): 
2974         * lib/paper.h: 
2975         * lib/paper.c (get_paper_info): 
2976         Moved new_diagram part of prefs into lib/diagramdata.h.  More
2977         could be done in new_diagram_data() now.
2979 2002-08-08  Lars Clausen  <lrclause@cs.uiuc.edu>
2981         * app/render_eps.c: Better scaling of fonts at non-normal zoom.
2983 2002-08-07  Cyrille Chepelov <cyrille@chepelov.org>
2985         * configure.in: removed silly user-visible comment
2987         (actually, this is a dummy entry before I manually run nemo; for
2988         some dist-upgrade related reason, this morning's run aborted before
2989         the snapshots were created)
2990         
2991 2002-08-06  Lars Clausen  <lrclause@cs.uiuc.edu>
2993         * objects/network/wanlink.c: 
2994         * objects/network/bus.c: 
2995         stdprop compliance!
2997         * objects/custom/custom_object.c: 
2998         * objects/network/wanlink.c: 
2999         * objects/flowchart/parallelogram.c: 
3000         * objects/flowchart/ellipse.c: 
3001         * objects/flowchart/diamond.c: 
3002         * objects/flowchart/box.c: 
3003         Removed GTK defaults stuff.
3004         
3005         * objects/UML/fork.c: 
3006         * objects/UML/object.c: 
3007         * objects/UML/lifeline.c: 
3008         * objects/UML/branch.c: 
3009         * objects/GRAFCET/transition.c: 
3010         * objects/FS/function.c: Removed GTK include.
3012         * objects/FS/flow-ortho.c: 
3013         * objects/FS/flow.c: Made the label behave again.
3014         Also removed GTK defaults stuff.
3016 2002-08-06  Hans Breuer  <hans@breuer.org>
3018         * app/autosave.c : ported to GDir which is the improved
3019         cross platform replacement for <dirent.h>
3021         * app/makefile.msc : build autosave.obj
3023         * app/font.c : some (bad?) code calls 
3024         dia_font_scaled_decent() not only with empty string but 
3025         with NULL. Handle it gracefully.
3027         * lib/paper.c : don't depend on ../app. Although IMO
3028         this shouldn't be allowed on any platform it is only
3029         disabled for win32, where it simply doesn't work
3030         this way
3032         * lib/widget.c (strcase_equal) : pass char* to g_strcasecmp()
3034         * objects/fs/flow.c : conditionalize debug spew, disabled
3035         and 'ported' to use g_print. Simple printf won't work with
3036         standard win32 gui apps, may even crash them.
3038         * plug-ins/makefile.msc : DISABLED svg-import cause it
3039         depends on ../objects/custom. This not only break the
3040         build for all non ELF systems but IMO also isn't acceptable
3041         from a design point of view. See dia-list mail on subject.
3043         * plug-ins/python/makefile.msc :
3044           plug-ins/python/python.c : remove all references to dirent    
3046 2002-08-05  Cyrille Chepelov  <cyrille@chepelov.org>
3048         * configure.in: added ro to ALL_LINGUAS
3050         * po-checktrans:
3051         * po-checktrans.py:
3052         * ../translation-graphs/transgraph.py: added support for fuzzy
3053         translations. Enlarged the graphs.
3055 2002-08-05  Lars Clausen  <lrclause@cs.uiuc.edu>
3057         * app/disp_callbacks.c (ddisplay_canvas_events): Now translates
3058         key events according to locale.  No clue if this works for
3059         advanced stuff.
3061 2002-08-04  Lars Clausen  <lrclause@cs.uiuc.edu>
3063         * lib/text.c: Various UTF8 related fixes, in particular in
3064         deleting.  Text_insert_char is fine, far as I can tell.
3066         * app/interface.c (create_display_shell): 
3067         * app/commands.c: Now uses gtk_clipboard functions, for they are
3068         much simpler.  Also handles Win32 clipboard.  Non-ascii chars
3069         don't seem to get handled correctly by text_insert_char in
3070         lib/text.c.
3071         
3072         * app/commands.c (received_selection_handler): Got utf8 handling
3073         on paste, and individual char handling out of commands.c.  Pasting
3074         non-ASCII is still broken, somehow.  It's all lib/text.c's fault.
3076         * lib/message.c (gtk_message_internal): Message dialog re-shown
3077         when new message appears.  Maybe it should even move to top?
3079         * lib/font.c: 
3080         * lib/widgets.c: 
3081         * app/render_eps.c (create_eps_renderer): Fonts now lowercase
3082         (again) and case-insensitive.
3084         * objects/GRAFCET/condition.c (CONDITION_FONT): Changed to
3085         BASIC_SANS_FONT. 
3087 2002-08-02  Lars Clausen  <lrclause@cs.uiuc.edu>
3089         * app/commands.c (edit_cut_text_callback): 
3090         * lib/text.c (text_delete_all): Now functioning undo for text cut.
3091         
3092         * app/commands.c (edit_cut_text_callback): Now removes text.
3093         Undo is broken, though.
3095 2002-08-01  Lars Clausen  <lrclause@cs.uiuc.edu>
3097         * app/diagram.c (diagram_update_menu_sensitivity): 
3098         Making cut_text active.
3099         
3100         * app/commands.h: 
3101         * app/commands.c: Using PROP_TYPE_TEXT to find text to copy to
3102         clipboard.  Also removed AA callback.   
3104 2002-08-01  Lars Clausen  <lrclause@cs.uiuc.edu>
3106         * objects/chronogram/chronoref.c: 
3107         * objects/chronogram/chronoline.c: 
3108         * objects/SADT/annotation.c: 
3109         * objects/SADT/arrow.c: 
3110         * objects/SADT/box.c: 
3111         * objects/GRAFCET/vergent.c: 
3112         * objects/GRAFCET/vector.c: 
3113         * objects/GRAFCET/step.c: 
3114         * objects/GRAFCET/condition.c: 
3115         * objects/GRAFCET/action.c: 
3116         * objects/ER/participation.c: 
3117         * objects/ER/relationship.c: 
3118         * objects/ER/entity.c: 
3119         * objects/ER/attribute.c: 
3120         Removing unnecessary GTK references.
3122 2002-07-31  Lars Clausen  <lrclause@cs.uiuc.edu>
3124         * objects/standard/image.c: 
3125         * objects/standard/textobj.c: 
3126         * objects/standard/ellipse.c: 
3127         * objects/standard/polygon.c: 
3128         * objects/standard/beziergon.c:
3129         * objects/standard/box.c: 
3130         Making default default properties.
3131         
3132         * objects/standard/image.c: 
3133         * objects/standard/arc.c: 
3134         * objects/standard/box.c: 
3135         * objects/standard/zigzagline.c: 
3136         * objects/standard/polyline.c: 
3137         * objects/standard/line.c: 
3138         * objects/standard/ellipse.c: 
3139         * objects/standard/polygon.c: 
3140         * objects/standard/beziergon.c: Removing vestigal GTK stuff.
3142         * lib/object_defaults.c (dia_object_default_create): 
3143         * lib/proplist.c: 
3144         * lib/properties.h: 
3145         * lib/object.c (object_copy_using_properties): 
3146         * lib/propdialogs.c: 
3147         * lib/propinternals.h: 
3148         * lib/propobject.c (object_create_props_dialog)
3149         (object_copy_props): 
3150         Removing the standard (toolbox) properties from defaults dialogs.
3152 2002-07-30  Lars Clausen  <lrclause@cs.uiuc.edu>
3154         * lib/font.c (dia_font_scaled_string_width) 
3155         (dia_font_scaled_ascent, dia_font_scaled_descent): Account for
3156         zoom factor.
3157         * lib/text.c (text_calc_boundingbox): Take descent into account.
3159         * objects/standard/bezier.c (bezierline_draw): 
3160         * lib/render.c (draw_bezier_with_arrows): 
3161         Better arrow drawing for beziers.  Doesn't change the mouse-click
3162         area either.
3164         * lib/arrows.h: Some const-ness.
3166         * lib/arrows.c (calculate_arrow_point): Initialize zero-length moves.
3168         * lib/render.c (draw_arc_with_arrows): 
3169         * objects/standard/arc.c (arc_draw): Better arrow drawing for
3170         arcs.  Doesn't change the mouse-click area yet.
3172         * app/menus.c: Forgotten fix:  Redraw menu item for non-Gnome.
3174         * lib/render.h: 
3175         * lib/render.c: 
3176         Arc arrow prework.
3178 2002-07-29  Lars Clausen  <lrclause@cs.uiuc.edu>
3180         * app/group.c (group_draw): Forgotten commit: Groups to draw as
3181         objects (using default routines).
3183         * app/object_ops.h: 
3184         * app/diagram.h: 
3185         * lib/diagramdata.h: 
3186         * lib/diagramdata.c (layer_find_closest_connectionpoint): 
3187         * objects/standard/zigzagline.c (zigzagline_move_handle): 
3188         * app/diagram.c (diagram_find_closest_connectionpoint): 
3189         * plug-ins/python/pydia-diagram.c
3190         (PyDiaDiagram_FindClosestConnectionPoint):
3191         * app/object_ops.c (object_connect_display) 
3192         (object_find_connectpoint_display) 
3193         * app/create_object.c (create_object_button_press) 
3194         (create_object_motion): 
3195         * app/modify_tool.c (modify_motion): 
3196         Adding object param to allow connectionpoint and handle coinciding.
3198         * objects/standard/zigzagline.c (zigzagline_check_orientation): 
3199         Fixing minor problems.
3201         * objects/standard/ellipse.c (ellipse_update_data): 
3202         Added direction hints.
3204         * lib/diagramdata.c: 
3205         * lib/object.c: 
3206         * lib/object.h: 
3207         * lib/diagramdata.h: 
3208         * objects/standard/zigzagline.c: 
3209         First working example of zigzagline hints, currently only between
3210         Box and Zigzagline.
3212 2002-07-27  Steffen Macke <sdteffen@web.de>
3214         * plug-ins/svg/render_svg.c: added support for rounded
3215         rectangles (fixes #69053 if compile with
3216         -DNEW_RENDER_OPS)
3217         * object/custom/shape_info.[c|h]: made parse_style and
3218         parse_path accessible for svg plug-in
3219         * plug-ins/svg/Makefile.am:
3220         * plug-ins/svg/svg.c:
3221         * plug-ins/svg/svg-import.c(new): added SVG import filter
3223 2002-07-27  Lars Clausen  <lrclause@cs.uiuc.edu>
3225         * objects/standard/box.c: 
3226         * objects/standard/zigzagline.c (zigzagline_move): 
3227         More work on zigzagline hints.
3229 2002-07-26  Lars Clausen  <lrclause@cs.uiuc.edu>
3230         * lib/connectionpoint.h: 
3231         Hints for zigzaglines.
3233         * app/properties.c (properties_show): 
3234         * app/defaults.c (defaults_show): 
3235         * lib/properties.h: 
3236         * lib/propobject.c (object_create_props_dialog): 
3237         * lib/object.h: 
3238         * objects/FS/flow-poly.c: 
3239         * objects/network/wanlink.c: 
3240         * objects/network/bus.c: 
3241         * objects/UML/class.h: 
3242         * objects/UML/class_dialog.c: 
3243         * objects/UML/association.c: 
3244         Start of removing toolbox props from props dialogs.
3245         
3246         * lib/widgets.c: 
3247         * lib/arrows.h: 
3248         * app/lineprops_area.c (dia_arrow_chooser_new): 
3249         * lib/arrows.c: Two new arrows: Concave, filled and blanked.
3251         * app/create_object.c: 
3252         * app/modify_tool.c: 
3253         * app/cursor.h: 
3254         * app/cursor.c: 
3255         More cursor change.
3257 2002-07-25  Lars Clausen  <lrclause@cs.uiuc.edu>
3259         * app/preferences.c: 
3260         * lib/paper.c: 
3261         * app/diapagelayout.c: 
3262         New prefs selector kind PREF_CHOICE chooses between a list of
3263         strings.  Used for picking default paper.
3264         
3265         * app/preferences.c (prefs_data): 
3266         * lib/paper.c (get_paper_info): Added prefs setting for
3267         is_portrait.
3269         * lib/render.c (draw_polyline_with_arrows): Handles degenerate
3270         line segments at the ends (bug #86603).
3272 2002-07-25  Lars Clausen  <lrclause@cs.uiuc.edu>
3274         * objects/standard/zigzagline.c (zigzagline_copy): Fix for bug
3275         #60324: Now calls update_data after copy.
3277         * app/interface.c (fill_sheet_wbox): Better fix for bug #88601:
3278         Now doesn't steal selection from non-object tools.
3280 2002-07-24  Lars Clausen  <lrclause@cs.uiuc.edu>
3282         * app/commands.c (help_manual_callback): Uses BROWSER environment
3283         variable when available.
3285 2002-07-23  Lars Clausen  <lrclause@cs.uiuc.edu>
3287         * app/interface.c (fill_sheet_wbox): Fix for bug #88601: Select an
3288         object from the new sheet when changing.
3290         * app/app_procs.c (app_init): Uses more standard size icon, from
3291         patch #56433.  Keeping old icon as dia_gnome_icon_large.png.
3293 2002-07-22  Lars Clausen  <lrclause@cs.uiuc.edu>
3295         * objects/UML/implements.c (implements_update_data): 
3296         * objects/UML/realizes.c (realizes_update_data): 
3297         * objects/UML/dependency.c (dependency_update_data): 
3298         Test for null strings before calling on ascent.
3300         * objects/UML/realizes.c (realizes_draw): 
3301         * objects/UML/message.c (message_draw): 
3302         * objects/UML/generalization.c (generalization_draw): 
3303         * objects/UML/dependency.c (dependency_draw) 
3304         * objects/UML/constraint.c (constraint_draw): 
3305         * objects/GRAFCET/condition.c (condition_draw): 
3306         * objects/UML/association.c (association_draw): 
3307         * objects/FS/flow-ortho.c (orthflow_draw): 
3308         * objects/FS/flow.c (flow_draw): Change to use
3309         draw_foo_with_arrows.  Pretty pretty arrows.  Yay me!
3311         * lib/render.h: 
3312         * lib/arrows.c (calculate_arrow_point): 
3313         * lib/arrows.h: 
3314         * lib/render.c: 
3315         * objects/standard/zigzagline.c:
3316         * objects/standard/polyline.c:
3317         * objects/standard/line.c: Work towards better arrow drawing.
3319 2002-07-21  Lars Clausen  <lrclause@cs.uiuc.edu>
3321         * objects/UML/state.c: Starting phase-out of State object as
3322         initial/final state (which never worked right).
3324         * app/app_procs.c (app_init): --version command line option for
3325         non-Gnome.
3327         * configure.in: Slight improvement in GETTEXT_PACKAGE handling.
3329 2002-07-19  Lars Clausen  <lrclause@cs.uiuc.edu>
3331         * app/render_eps.c: Removed debugging info.
3333         * lib/font.c (dia_font_scaled_ascent, dia_font_scaled_descent):
3334         Kludge to make ascent and descent work for empty strings.  Won't
3335         work when using non-ASCII fonts.  Better would be to get a
3336         PangoFont and ask directly.
3338         * configure.in: Simple define of GETTEXT_PACKAGE, and some updates
3339         of the init stuff.
3341         * app/render_gdk.c (get_text_width): Fixed use of wrong string.
3342         Cursor now better.
3344 2002-07-18  Lars Clausen  <lrclause@cs.uiuc.edu>
3346         * plug-ins/xfig/xfig-export.c: First use of draw_object render
3347         function: All shapes are now groups in XFig export.
3349         * lib/diagramdata.c (normal_render): 
3350         * lib/render.c: 
3351         * lib/render.h: 
3352         * app/display.c (ddisplay_obj_render): 
3353         New render function for drawing objects, allows renderers to group
3354         or otherwise specially handle objects.  We may want to reconsider
3355         calling it in app/display.c, as we 'know' the object draw function
3356         is the default one there.
3358         * lib/Makefile.am: Removed extra \ that broke stuff.
3360         * plug-ins/xfig/xfig-import.c: 
3361         Spline import for xfig.  Not perfect.
3363         * objects/standard/create.h: 
3364         * objects/standard/bezier.c (bezierline_create): 
3365         * lib/bezier_conn.c: 
3366         * lib/beziershape.c (beziershape_set_points): 
3367         * lib/bezier_conn.h: 
3368         * lib/beziershape.h: 
3369         Support for creating beziers non-interactively.
3371 2002-07-17  Lars Clausen  <lrclause@cs.uiuc.edu>
3373         * plug-ins/xfig/xfig-import.c: Support for polygons and
3374         polylines.  Special warning handling system removed.
3376         * lib/message.c (gtk_message_internal): Fixed bug involving
3377         closing message window and then getting repeated message.
3379         * Makefile.am: 
3380         * autogen.sh: 
3381         * configure.in (GETTEXT_PACKAGE): 
3382         Update based on bug #88199.  Hopefully this doesn't break too much
3383         intl stuff.
3385         * dia.desktop.in (_Comment): Changed after suggestion from
3386         calum.benson@ireland.sun.com (bug 88345)
3388         * app/sheets_dialog_callbacks.c: Fix from Dolores Alia de Saravia
3389         <loli@unsa.edu.ar> that makes user/system distinction better.
3391 2002-07-16  Lars Clausen  <lrclause@cs.uiuc.edu>
3393         * app/render_libart.c: Got the context right, removed crashes.
3395         * app/commands.c: 
3396         * app/commands.h: 
3397         Redraw menu item.
3399         * app/display.c: 
3400         * app/display.h: 
3401         * app/interface.c: 
3402         * app/menus.c: 
3403         Remove libart #defines from most places (still around for png export).
3405         * app/render_libart.h: 
3406         * app/render_libart.c: 
3407         * configure.in (HAVE_LIBART): 
3408         Starting on update of libart stuff for png export (without X).
3410         * app/autosave.h (autosave_check_autosave): 
3411         * app/load_save.h: 
3412         * app/diagram.h: 
3413         * app/Makefile.am (dia_core_files): 
3414         * app/load_save.c: 
3415         * app/diagram.c (diagram_set_modified): 
3416         * app/autosave.c: 
3417         * app/app_procs.c (app_init): 
3418         Autosave support.  No automatic restore yet.
3420 2002-07-16  Lars Clausen  <lrclause@cs.uiuc.edu>
3422         * app/render_eps.c (create_eps_renderer): #ifdef'd a scale
3423         assignment. 
3424         
3425 2002-07-15  Lars Clausen  <lrclause@cs.uiuc.edu>
3427         * app/interface.c (fill_sheet_menu): Tear-off for sheets menu.
3429 2002-07-15  Andrew Ferrier  <andrew@new-destiny.co.uk>
3431         * Fix for 'make dist' etc. --- problem caused by
3432         previous AUTHORS patch.
3434 2002-07-14  Lars Clausen  <lrclause@cs.uiuc.edu>
3436         * plug-ins/cgm/cgm.c (init_fonts): Changed pango_font_map to
3437         pango_context. 
3438         (set_font): NULL check.
3439         
3440 2002-07-12  Lars Clausen  <lrclause@cs.uiuc.edu>
3442         * app/disp_callbacks.c: 
3443         * lib/diamenu.h: 
3444         Addition to the object menus allows check menu items.
3446 2002-07-11  Andrew Ferrier  <andrew@new-destiny.co.uk>
3448         * HACKING: completely changed to bring up-to-date.
3449         * AUTHORS: file needs REMOVING from CVS as now
3450           dynamically generated.
3451         * app/authors.h: split into subcategories for original
3452           authors, maintainers, etc.
3453         * app/app_procs.c: --credits rewritten to support new
3454           app/authors.h
3455         * app/commands.c: no changes to about box code, comment
3456           added though.
3457         * Makefile.am: added rule for AUTHORS. I'm still
3458           inexperienced with automake, it seems to work, but
3459           for AUTHORS-related bugs, look at this change first.
3461 2002-07-10  Lars Clausen  <lrclause@cs.uiuc.edu>
3463         * plug-ins/Makefile.am (SUBDIRS): Just realized why my hack didn't
3464         work.  Back to including xslt dir always.
3466         * objects/UML/uml.c: 
3467         * objects/UML/class.h: 
3468         * objects/UML/class_dialog.c: 
3469         * objects/UML/class.c: Patch from
3470         <mattam@netcourrier.com>:  Adds comment visibility switch, also
3471         fixes various bugs.
3473         Big patch from Alejandro Aguilar Sierra <asierra@servidor.unam.mx>
3474         for state/fork/activity stuff.
3475         * objects/UML/state.c: Removed old draw_rounded_rectangle code.
3476         * objects/UML/Makefile.am:
3477         * objects/UML/uml.c:
3478         * sheets/UML.sheet.in: Added new objects activity, fork,
3479           state_term.
3480         * objects/UML/pixmaps/state_term.xpm:
3481         * objects/UML/state_term.c: New, only initial/final states.
3482         * objects/UML/pixmaps/activity.xpm:
3483         * objects/UML/activity.c: New, activity state.
3484         * objects/UML/pixmaps/fork.xpm:
3485         * objects/UML/fork.c: New, fork/join bar.
3486         * objects/UML/pixmaps/state.xpm: state icon.
3488         
3489         * doc/diagram.dtd: 
3490         * doc/shape.dtd: Patch from "Dolores Alia de Saravia"
3491         <loli@unsa.edu.ar> to add dia: to diagram.dtd elements and add
3492         svg:text to shape.
3494 2002-07-07  Lars Clausen  <lrclause@cs.uiuc.edu>
3496         * plug-ins/Makefile.am (SUBDIRS): Made the XSLT dir depend on
3497         detecting XSLT
3499         * app/Makefile.am: Commented out the diaconv parts while it's not
3500         used anyway.  To come back later.
3502         * configure.in (HAVE_FREETYPE): 
3503         * app/app_procs.c: 
3504         * app/render_eps.h: 
3505         * app/render_eps.c: Support for printing with freetype, better
3506         encapsulated now.  Renders the text nicely, but ignores font
3507         setting.  Requires pangoft2 to get the font outline, but non-text
3508         objects can still be rendered without it.
3510         * app/commands.h: 
3511         * app/commands.c (objects_place_up_callback) 
3512         (objects_place_down_callback): 
3513         * app/diagram.h: 
3514         * app/diagram.c (diagram_place_down_selected) 
3515         (diagram_place_up_selected): Starting support for moving objects
3516         one level up/down.
3518         * app/menus.c: Removed character/numeral shortcuts.
3520 2002-07-06  Hans Breuer  <hans@breuer.org>
3522         * makefile.am app/makefile.am lib/makefile.am
3523           objects/makefile.am plug-ins/makefile.am 
3524           plug-ins/python/makefile.am :
3525         added required files for win32 build to EXTRA_DIST
3527         * app/paginate_psprint.c app/render_eps.c 
3528           app/app_procs.c :
3529         wrap (E)PS Renderer into HAVE_FREETYPE, no FreeType
3530         on Pango as currently is on win32 => no PostScript 
3531         anymore.
3533         * lib/widgets.c : undef GTK_DISABLE_DEPRECATED;
3534         use '/* noop */;' for empty case labels; replace
3535         debug spew printf with g_print which is guaranteed 
3536         to work on win32, too.
3538         * lib/font.c (dia_pfd_set_weight) : set 'intermediate' values 
3539         for DIA_FONT_MEDIUM and DIA_FONT_DEMIBOLD as explicit allowed 
3540         in the pango_font_description_set_weight() api documentation
3541         Take care for them in dia_font_get_style() too.
3543         * lib/font.[hc] lib/widget.c objects/custom/shape_info.c
3544           plug-ins/shape/shape-export.c plug-ins/svg/render_svg.c :
3545         rename Obliquity to Slant which appears to be the usual name,
3546         also rename dia_font_get_style_string -> dia_font_get_slant_string
3548         * plug-ins/wmf/wmf.cpp : finally ported to new font api
3550         * lib/prop_attr.c app/render_gdk.c : dont *_unref if NULL
3552         * objects/uml/association.c class.c large_package.c message.c
3553         if g_free() is used g_strdup needs to be used.
3554         * objects/custom/shape_info.c
3555           objects/ER/attribute.c entity.c
3556           objects/standard/image.c 
3557           app/sheets_dialog_callbacks.c : more strdup cleaning
3559 2002-07-05  Lars Clausen  <lrclause@cs.uiuc.edu>
3561         * app/render_eps.c: Non-crashing printing (made the right
3562         context).  Font output still fscked up.
3564 2002-07-05  Andrew Ferrier  <andrew@new-destiny.co.uk>
3566         * app/authors.h: Added file --- now master
3567         location for contributors data.
3568         * app/app_procs.c: Added --credits option.
3569         * app/commands.c: Modified about box to use
3570         app/authors.h.
3572 2002-07-05  Lars Clausen  <lrclause@cs.uiuc.edu>
3574         * app/render_eps.c: First stab at EPS rendering using the contour
3575         code from PAPS.  Crashes.
3577 2002-06-30  Lars Clausen  <lrclause@cs.uiuc.edu>
3579         * app/recent_files.c (recent_file_history_remove): 
3580         Fixed call to g_list_delete_link discarding return value.
3581         
3582         * lib/widgets.c (dia_font_selector_set_styles): 
3583         * lib/font.h (DiaFontWeight): 
3584         * lib/font.c (dia_font_get_style): Revert to DIA_FONT_NORMAL==0
3586 2002-06-30  Cyrille Chepelov  <cyrille@chepelov.org>
3588         Contribution from Alan Horkan <horkana@tcd.ie>: 
3589         
3590         * shapes/Assorted/*
3591         * sheets/Assorted.sheet:
3592         A set of 40 assorted geometric shapes.
3594         * sheets/Assorted.sheet.in:
3595         * sheets/Makefile.am
3596         * shapes/Assorted/Makefile.am:
3597         * shapes/Makefile.am:
3598         * po/POTFILES.in:
3599         * configure.in:
3600         Done the integration job of Alan's shapes. (Translators: have fun!)
3602         * po/dia.pot: refreshed the main potfile.
3603         
3604 2002-06-28  Cyrille Chepelov  <cyrille@chepelov.org>
3606         Patch from Tim Ellis <Tim.Ellis@gamet.com>:
3607         
3608         * objects/UML/class.[ch]:
3609         * objects/UML/class_dialog.c:
3610         changed the number of connection points from a hardcoded value of
3611         8 to a #defined constant
3613         (I changed the constant back from 20 to 8, until we better know
3614         how we'll handle more connection points on the UML class in the
3615         future -- but Tim's patch is a welcome clean-up).
3617 2002-06-26  Cyrille Chepelov  <cyrille@chepelov.org>
3619         * shapes/MSE/demultiplexer.xpm:
3620         * shapes/MSE/node_center.xpm:
3621         * shapes/MSE/multiplexer.xpm:
3622         * shapes/MSE/tacsat.xpm: updated MSE icons (transparency) by Alan
3623         Horkan <horkana@tcd.ie>
3625 2002-06-25  Lars Clausen  <lrclause@cs.uiuc.edu>
3627         * lib/widgets.c: Total rehash of font selector, with font dialog
3628         option, expanding list (not LRU yet), and stuff.
3630 2002-06-25  Cyrille Chépélov  <cyrille@chepelov.org>
3632         * lib/font.h:
3633         * lib/font.c: 
3634         Added a set of new setter/getters, some of them more specially for
3635         the SVG-ish I/O.
3636         
3637         * plug-ins/shape/shape-export.c: (new_shape_renderer),
3638         (destroy_shape_renderer), (set_font), (draw_string):
3639         * plug-ins/svg/render_svg.c: (new_svg_renderer),
3640         (destroy_svg_renderer), (set_font), (draw_string):
3642         Actually exported the font face, style, weight and size (sodipodi
3643         agrees with dia on how a small sample should look like (a sample
3644         0.90 would not even display anyways). Yay !)
3646         Patch from Matthieu Sozeau <mattam@netcourrier.com>:
3648         * plug-ins/xslt/Makefile.am: repaired the mess Cyrille put there.
3650         (end of ChangeLog-less patch)
3652         * objects/custom/shape_info.c (parse_style): now understands the
3653         font-style and font-weight attributes as well. Does not use
3654         anymore dia_font_new_from_legacy_name().
3655         
3656 2002-06-24  Lars Clausen  <lrclause@cs.uiuc.edu>
3658         * objects/standard/textobj.c: Now uses stdprops for defaults.
3660         * lib/font.h: Changed order of DiaFontWeight entries.  Sorry.
3661         * lib/font.c (dia_font_get_style): Style now linear and conversion
3662         simple. 
3664         * lib/widgets.c (dia_font_selector_set_styles): Fixed the style
3665         selector. 
3667 2002-06-24  Cyrille Chepelov  <cyrille@chepelov.org>
3669         * plug-ins/dxf/dxf-import.c:
3670         using dia_font_new_from_style()
3672         Patch from Matthieu Sozeau  <mattam@netcourrier.com>:
3674         * objects/UML/class.[ch]: Added a comment field to class
3675         * objects/UML/uml.[ch]: Added a comment field to attributes,
3676         operations and parameters.
3677         * objects/UML/class_dialog.c: Added code for the new comment
3678         fields.
3679         * plug-ins/xslt/*.xsl: Added some code to handle comments.
3680         * plug-ins/xslt/xslt*.c: Clean up based on Cyrille comments.
3681         Added a $directory parameter for stylesheets so the output is 
3682         in the good place (not in the $PWD).
3684         (end of Patch)
3686         * AUTHORS: added contributors, updated maintainers. Removed the
3687         specific areas of action.
3689         * Patch from Andrew Ferrier <andrew@new-destiny.co.uk>, derived
3690         from a patch by Xing Wang <quixon@gnuchina.org>:
3692         * app/commands.c: help_about_callback now supports
3693         new-style GNOME about box as well as old GTK style. 
3694         code also tidied (Closes: #85726)
3696         (end of Patch)
3698         * app/commands.c: fixed the copyright (it's not all FSF), and
3699         maintainers. Synced contributors list with AUTHORS.
3700                 
3701 2002-06-24  Lars Clausen  <lrclause@cs.uiuc.edu>
3703         * lib/message.c: More work on repeating messages, now with
3704         togglable view.
3706 2002-06-24  Hans Breuer  <hans@breuer.org>
3708         * lib/widget.c : some more bits in place, at least
3709         it does something useful instead of crashing. Much
3710         better - but not all ok :-)
3712 2002-06-23  Lars Clausen  <lrclause@cs.uiuc.edu>
3714         * lib/message.c (gtk_message_internal): First stab at repeating
3715         message dialog.
3717 2002-06-23  Cyrille Chepelov  <cyrille@chepelov.org>
3719         * objects/FS/*.c:
3720         * objects/GRAFCET/*.c:
3721         * objects/SADT/*.c:
3722         * objects/UML/association.c: (one instance forgotten)
3723         * objects/UML/large_package.c: 
3724         * objects/standard/textobj.c:
3725         * lib/attributes.c:
3726         * lib/text.c:
3727         using dia_font_new_from_style()
3729 2002-06-23  Hans Breuer  <hans@breuer.org>
3731         * lib/font.c : giving some love to
3732         dia_font_new_from_legacy_name() that is making
3733         import of old files as painless as possible and
3734         provide an almost exact match where possible.
3735         It does not yet fully work because it interfers
3736         with the Style to DiaStyle conversion which comes
3737         next ...
3739         [Changing these files is only allowed with Dia-0.90]
3740         * broken-files/fonts-0.90.dia : including the
3741         common hard-coded fonts from Dia-0.90. It also
3742         has drawn bounding-boxes for win32 as they were calculated
3743         from the former version (they were all too big).
3744         * broken-files/fonts-0.90-full.dia : all hardcoded
3745         fonts including the asian versions. On my machine
3746         this gives _a lot_ complaining about missing fonts
3747         and a finally a broken file display. Anyone having
3748         all these fonts ?
3749         
3750 2002-06-23  Cyrille Chepelov  <cyrille@chepelov.org>
3752         * objects/chronogram/*.c: 
3753         * objects/custom/custom_object.c:
3754         * objects/ER/*.c:
3755         using dia_font_new_from_style()
3757 2002-06-23  Lars Clausen  <lrclause@cs.uiuc.edu>
3759         * lib/widgets.c (dia_font_selector_set_styles): Improvements to
3760         font selector (stability, insensitivity).
3762         * lib/font.c (dia_font_scaled_build_layout): Removed unworkable
3763         stretching scheme for tweaking, and made scaling scheme faster
3764         (but less precise).
3765         (dia_font_dia_style_to_pango): Oops, % != /.
3767 2002-06-23  Cyrille Chepelov  <cyrille@chepelov.org>
3769         
3770         * patch from Matthieu Sozeau  <mattam@netcourrier.com>:
3772         * plug-ins/xslt : Added an XSLT plugin to export dia files using
3773         XML Stylesheets. The plug-in requires DIA_PLUGIN_PATH to be set.
3774         It includes a small config file to tell it what stylesheets to use.
3776         (end of patch)
3777         
3778         * plug-ins/xslt/xsltdialog.c: modified the dialog to be more 
3779         GTK2.0/HIG compliant (the labels could be slightly more verbose,
3780         perhaps). Added back a couple forgotten _(). Removed //-style
3781         comments.
3782         
3783 2002-06-23  Hans Breuer  <hans@breuer.org>
3785         * lib/plug-ins.c
3786         (dia_plugin_get_name) : don't crash plugin_manager
3787         on name being NULL 
3788         (dia_plugin_load) : reuse the description field to
3789         store the error string if loading fails.
3791         * lib/font.[hc] : starting to beautify the new
3792         font api: proper namespacing, adding convenience
3793         functions like dia_font_new_from_style(), ...
3795         * objects/uml/*.c : use the new convenience functions.
3797         [Next thing I plan to do is changing the other font
3798          functions to take DiaStyle and make Style and 
3799          BASIC_*_FONT vanish. As well as giving some love to
3800          dia_font_new_from_legacy_name().
3801          If anyone want's to help on converting the other
3802          objects to the new api during that, I would highly 
3803          appreciate it.]
3805 2002-06-23  Hans Breuer  <hans@breuer.org>
3807         * lib/font.c : made it compile and small indent fixes.
3808         Is there a code-has-no-effect-so-needs-not-be-valid
3809         with GCC?       
3811         * lib/widgets.c : use g_strcasecmp
3813 2002-06-22  Lars Clausen  <lrclause@cs.uiuc.edu>
3815         * lib/font.c: 
3816         * lib/font.h: 
3817         * lib/widgets.c: Font names sorted, style selector widget
3818         reappeared.  Doesn't select the old style yet.
3820 2002-06-22  Cyrille Chepelov  <cyrille@chepelov.org>
3822         * lib/font.c: one who expects a text's font to be changed shall 
3823         actually request the attributes to apply to the whole range of the
3824         said text... D'oh! 
3826         * lib/font.c: extents computation was wrong.
3828         * lib/font.c: dia_font_get_legacy_name(); g_strconcat works better
3829         if a last NULL parameter is added...
3831         * lib/font.c: extents computation was completely wrong. This looks
3832         much better this time.
3834         * objects/UML/class.c: fixed the various strings positions.
3836         * lib/font.h, and **/*.[ch] (all callers of dia_font_new): used
3837         macros to get the hardcoded base fonts.
3839         * objects/ER/relationship.c: wasn't converted to DiaFont*
3840         
3841 2002-06-22  Hans Breuer  <hans@breuer.org>
3843         * lib/widget.c : dont use backend specific functions
3844         to get on the font_families. Including it would mean
3845         including <windows.h> which breaks due to namespace
3846         pollutions ...
3848         * lib/libdia.def : updated externals
3850         * app/makefile.msc : temporary disabled: -DHAVE_LIBART
3852         * lib/font.c : added empty dia_font_init_instance function,
3853         reformatting of dia_fon_unref to allow to set breakpoint,
3854         dia_fon_build_layout() : dont crash on string==NULL
3856         * lib/text.c (text_set_attributes) : don't unref the wrong font
3858         * lib/widgets.c (dia_fon_selector_set_font) : our hashtable
3859         stores lowercased font names, but dia_font_get_family()
3860         returns mixed case      
3862 2002-06-22  Lars Clausen  <lrclause@cs.uiuc.edu>
3864         * lib/widgets.c: 
3865         * app/render_gdk.c: Patch from Hans Breuer.
3867         * app/Makefile.am (dia_core_files): diaconv commented out for now.
3868         
3869 2002-06-22  Cyrille Chepelov  <cyrille@chepelov.org>
3871         * lib/all files touched yesterday: took into account some of Hans
3872         Breuer's remarks in
3873         http://mail.gnome.org/archives/dia-list/2002-June/msg00257.html
3875         * objects/chronogram/*: 
3876         * objects/custom/*:
3877         * objects/ER/*:
3878         * objects/flowchart/*:
3879         * objects/FS/*:
3880         * objects/GRAFCET/*:
3881         * objects/SADT/*:
3882         * objects/standard/textobj.?:
3883         * objects/UML/*:
3884         converted to the new DiaFonts.
3886         * plug-ins/cgm/*:
3887         * plug-ins/pstricks/*:
3888         * plug-ins/wpg/*:
3889         * plug-ins/dxf/*:
3890         * plug-ins/xfig/*:
3891         Made minimalistic conversions so that they'd at least compile.
3893         * app/render_gdk.c:
3894         * app/render_pixmap.c:
3895         Converted to the new DiaFonts.
3897         * app/app_procs.c
3898         * app/diaconv.c:
3899         * app/render_eps.c:
3900         made the minimal changes so that it would at least build.       
3902         *** At this point, the thing builds on my machine, but segfaults
3903         right away. ***
3904         
3905 2002-06-21  Cyrille Chepelov  <cyrille@chepelov.org>
3907         * configure.in: removed the backend-specific pango pkg_modules
3908         (trivial to add back if needed, when actually needed)
3910         * app/Makefile.am:
3911         * app/*gnomeprint.[ch]: (removed): removed the GNOME-print
3912         renderer. The APIs will have completely changed when we get around
3913         to redo a renderer for it, anyways.
3915         * font.[ch]: rewrote everything from scratch, with a Pango
3916         implementation. Normally, only backend-neutral things should go in
3917         there.
3919         **WARNING**: new rules for managing DiaFont* pointers: these are
3920         reference-counted GObjects. One >must< diafont_ref() and
3921         diafont_unref() as appropriate. I wish I could overload operator=()...
3923         lib/plug-ins.h: bumped up the plug-in API.
3924         
3925         lib/attributes.c: 
3926         lib/dia_xml.c: 
3927         lib/dummy_dep.h
3928         lib/object_defaults:
3929         lib/prop_attr.c: Adapted to the new DiaFont API. This'll change
3930         again tomorrow with GObject.
3931         
3932         lib/widgets.c: Adapted to the new DiaFont API and to Pango.
3934         **** The rest of the tree should be updated as well ****
3935         
3936 2002-06-21  Lars Clausen  <lrclause@cs.uiuc.edu>
3938         * app/render_gdk.h: 
3939         * app/render_gdk.c: 
3940         * app/render_pixmap.c: 
3941         * app/render_pixmap.h: 
3942         * app/render_libart.h: 
3943         * app/render_libart.c: 
3944         * lib/font.h: 
3945         * lib/font.c: Removed freetype stuff (still around in
3946         lib/widgets.c 'cause we might want the font selector widget).
3948 2002-06-20  Cyrille Chepelov  <cyrille@chepelov.org>
3950         * shapes/network/laptop.(xml|shape):
3951         * sheets/network.sheet.in: added Laptop (notebook) PC shape,
3952         contributed by Alan Horkan <horkana@tcd.ie>. (Closes: #82643)
3954 2002-06-17  Hans Breuer  <hans@breuer.org>
3956         * lib/object_defaults.c : #include <libxml/tree.h> not
3957         <tree.h> pointed out by Xing Wang
3959 2002-06-17  Lars Clausen  <lrclause@cs.uiuc.edu>
3961         * lib/color.h (GDK_COLOR_TO_DIA, DIA_COLOR_TO_GDK): 
3962         * lib/widgets.c: 
3963         * app/color_area.c: Update to
3964         gtk_color_selection_*_current_color() fixed bad crash issues, plus
3965         updated color conversions.
3967         * sheets/ER/weakentity.xpm: Accepted patch from
3968         quixon@gnuchina.org to make icon match actual appearance.
3970         * app/recent_files.c: Fixed GNOME recent file problem, thanks to
3971         quixon@gnuchina.org.
3973 2002-06-16  Hans Breuer  <hans@breuer.org>
3975         * lib/plug-in.[hc] : make PlugInInfo opaque again in the 
3976         good tradition of information hiding. Add new function
3977         dia_plugin_get_symbol()
3978         * app/sheets.c app/sheets_dialog_callbacks.c : use it
3980         * app/sheets.c : stop complaining about object_get_type() 
3981         returning NULL. This is a consequence of e.g. disabling 
3982         plug-ins at runtime _and_ it was and is gracefully handled. 
3983         Spitting out g_warning for it isn't appropriate. 
3985         * lib/object.[ch] : removed dead code
3987         * app/plugin-mangager.c : almost complete rewrite for gtk2
3988         using GtkListStore/GtkTreeView
3990         * lib/libdia.def : updated externals
3992         * todo.gtk2 : updated, that is removed already done steps
3994 2002-06-15  Hans Breuer  <hans@breuer.org>
3996         * objects/uml/class_dialog.c : clean some left-over
3997         utf8-mess, return 0 from "focus_out_event" handlers
3998         to avoid asserting in gtk (#78305). Reconstruct 
3999         stereotype/NULL behaviour to avoid rendering empty
4000         stereotypes on classes and member functions
4002         [#56109 - Provide object defaults for StdProp objects,
4003          some remaining issues are discussed in bugzilla]
4005         * lib/object_defaults.c : (new file) manage default properties 
4006         of dia objects. The serialization is done with standard
4007         object methods in a diagram compatible format.
4009         * lib/object.c : add object_registry_foreach() which allows
4010         to iterate over all registered object types
4012         * lib/object.h : added prototypes object_default*() and
4013         object_registry_foreach()
4015         * lib/makefile.am lib/makefile.msc : add new file to build
4017         * lib/libdia.def : export new functions
4019         * app/defaults.c : provide StdProp based defaults if the
4020         ObjectType doesn't implement it's own default functions
4022         * app/create_object.c : through dia_object_default_create()
4023         * app/disp_callbacks.c : same here
4025 2002-06-12  Lars Clausen  <lrclause@cs.uiuc.edu>
4027         * objects/FS/flow-ortho.c (orthflow_get_object_menu): Menu
4028         sensitivity for deleting segments.
4030 2002-06-12  Cyrille Chépélov  <cyrille@chepelov.org>
4032         * app/color_area.c: (color_area_events):
4033         * app/diagram.c: (diagram_destroy):
4034         * app/interface.c: (zoom_activate_callback), (fill_sheet_wbox),
4035         (fill_sheet_menu):
4036         * app/load_save.c: (diagram_data_load):
4037         * app/menus.c: (menus_get_item_from_path):
4038         * app/preferences.c: (prefs_load):
4039         * app/render_gdk.c: (get_text_width):
4040         * lib/arrows.h:
4041         * lib/color.c: (color_convert):
4042         * lib/dia_dirs.c: (dia_config_filename):
4043         * lib/dia_xml.c: (xmlDiaParseFile), (data_type):
4044         * lib/intl.c: (intl_get_language_list):
4045         * lib/message.c: (message):
4046         * lib/message.h:
4047         * lib/paper.c: (get_default_paper):
4048         * lib/plug-ins.c: (this_is_a_plugin), (dia_register_plugins):
4049         * lib/widgets.c: (dia_file_selector_get_file):
4050         * lib/widgets.h:
4051         * objects/standard/image.c: (get_directory):
4053         warningectomy.
4054         
4055 2002-06-12  Lars Clausen  <lrclause@cs.uiuc.edu>
4057         * ChangeLog: Fixed bad UTF-8 mess.  Apologies.
4059 2002-06-11  Lars Clausen  <lrclause@cs.uiuc.edu>
4061         * app/interface.c: sscanf now returns EOF on empty string, so
4062         handle no match for zoom factor better => correct zoom at start.
4064         * app/sheets.c (create_object_pixmap): Tried to display empty error.
4065         (sheets_optionmenu_create): Died when not finding specified
4066         sheet.  Don't think it should.
4068         * objects/UML/association.c: Added patch from osamyn@ulb.ac.be
4069         (bug #84367) to place the text better.
4071 2002-06-11  Cyrille Chepelov  <cyrille@chepelov.org>
4073         * configure.in: Added forgotten libgnomeui-2.0 when --enable-gnome
4074                         
4075         * app/commands.c: Removed unnecessary gnome include. Removed
4076         GNOME-Print support.
4078         * app/menus.h: Removed now unnecessary gnome include.
4079         
4080         * app/sheets_dialog.c: Used Gtk 2.0 stock buttons instead of
4081         GNOME-specific stock buttons
4082         
4083 2002-06-09  Hans Breuer  <hans@breuer.org>
4085         * app/app_procs.c : convert 'Modified diagrams exits'
4086         dialog to use GtkMessageDialog. That gives us:
4087         - icons without Gnome dependency
4088         - much less code, also cross platform
4089         - improved useability ?
4091         * app/color_area.c : the Color Selection Widget looked
4092         quite wrong (alpha problems). Fix it by merging in required
4093         changes stolen from The Gimp cvs
4094         * app/color_area.h : to get the right appearance the maskes
4095         needed to be taken into account
4096         * app/interface.c : adapt to color_area_create changes.
4097         Also remove some dead code and finally remove cvs autexpansion, 
4098         I was bothered enough by irrelevant differences :-)
4100         * app/defaults.c app/properties.c app/dia-props.c : use improved GtkDialog
4101         api, i.e stocks and response to make the GnomeDialog usage
4102         obsolete. Also fixed the issue with closing the 'parent'
4103         before closing the dialog
4105         * app/display.[ch] : removed some dead code and conversion
4106         to new GtkDialog api. Also trying to conform to new HIG
4107         standard http://developer.gnome.org/projects/gup/hig/
4109 2002-06-09  Hans Breuer  <hans@breuer.org>
4111         * lib/makefile.msc : define GTK_DISABLE_DEPRECATED,
4112         build ps-utf8.c
4114         * lib/dia_image.c : gtk_widget_set_default_visual()
4115         remove. It does nothing with Gtk2.
4117         * lib/libdia.def : added ps_unicoder exports
4119         * lib/message.c : remove #GNOME use GtkMessageDialog.
4120         Yeah, Dia gets dialogs wit icons cross-platform.
4122         * lib/prop_geomtypes.c : gtk_spin_button_get_value_as_float()
4123         to gtk_spin_button_get_value()
4125         * lib/prop_inttypes.c : gtk_label_set() -> gtk_label_set_text()
4127         add #undef GTK_DISABLE_DEPRECATED to still use ...
4128         * lib/prop_text.c :  ... GtkText
4129         * lib/prop_widgets.c : ... GtkList
4130         * lib/prop_dialogs.c : ... gtk_signal_connect and more
4131         * lib/widgets.c : ... (too much to list here)
4133         * lib/ps-utf8.c : #include <string.h>
4135 2002-06-08  Cyrille Chepelov  <cyrille@chepelov.org>
4137         * configure.in:
4138         * Makefile.am:  Adapted for gtk2.
4139         Removed dependencies on libunicode, on iconv(), on langinfo().
4141         * acconfig.h: removed (now obsolete)
4143         * lib/charconv.[ch]: removed (superceded by glib)
4144         * lib/ps-utf8.[ch]: removed dependency on charconv.[ch]
4146         * **/*.[ch]: removed (utfchar *), (unichar) and other charconv or
4147         libunicode types for their glib counterparts. Fixed the include
4148         paths for libxml2. Removed all traces of libxml1 or non-UTF8
4149         support (there were remains in objects/uml).
4151         
4152 2002-06-08  Hans Breuer  <hans@breuer.org>
4154         */*.c */*/*.c : remove all the #ifdef *_UTF8_* hell,
4155         only keep the utf-8 clean code cause Dia+Gtk2 now talk it.
4156         Also use g_strdup()'s handling of NULL by returning NULL
4157         again at all places I found (remove unnecessary if's)
4159         * todo.gtk2 : new file to keep notes about gtk2 porting,
4160         further issues and thoughts and some status information.
4161         Also sent to dia-list ('Dia goes Gtk2 ...').
4162         
4163         [make it compile with GTK+ 2.0]
4165         * config.h.win32 : #undef GTK_TALKS_UTF8_WE_DONT,
4166         removed definition of S_ISDIR, S_ISREG and getlogin
4168         * */makefile.msc : Use GTK2 and libxml2
4169         BEWARE: makefile.am, configure.in not yet ported !
4171         * app/app_procs.c app/diagram.c : remove 
4172         gtk_item_factory_dump_rc code, (it wasn't read in again anyway) 
4173         but set use gtk_menu_set_accel_path() on menu creation
4175         * app/color_area.c lib/widgets.c : 
4176         make use of gtk_color_selection_set_has_palette ()
4178         * app/commands.c : gdk_pixbuf_new_from_file wants an 
4179         extra argument. Convert from DIR to GDir usage.
4181         * app/diagram_tree.c(button_press_callback) : need to return 
4182         FALSE in the signal handler to let gtk process it further.
4183         (get_object_name) : don't leak 'prop'
4184         
4185         * app/diapagelayout.c : adapt to GtkTypeInfo changes and handle 
4186         dia_page_layout_destroy() getting called more than once
4188         * app/diaunitspinner.c : GtkEditable -> GtkEntry, 
4189         GtkTypeInfo changes
4191         * app/disp_callbacks.c : gtk_menu_append() -> gtk_menu_shell_append()
4193         * app/display.h : wrap input contexts declarations into #ifdef USE_XIM.
4194         IIRC this code will not compile unchanged when USE_XIM is defined ...
4196         * app/gtk[hv]wrapbox.[hc] : use already ported version from The GIMP 1.3.x
4198         * app/interface.c : there is no widget->klass anymore in Gtk, 
4199         use GTK_WIDGET_GET_CLASS instead. gdk_pixbuf_new_from_file() extra
4200         parameter. Some tweaking of GtkWrapBox usage to get four tools in
4201         a row again.
4202         switch off GTK's double buffering on Dia's canvas. Otherwise we would 
4203         get triple buffering and flicker.
4204         Replace call to GTK private function _gtk_accel_group_attach()
4205         with public gtk_window_add_accel_group()
4207         * app/layer_dialog.c : adapt to GtkTypeInfo changes
4209         * app/load_save.c lib/plug-ins.c lib/sheet.c 
4210           objects/custom/custom.c : 
4211         simplified by using g_file_test()
4213         * app/menus.c : convert from gtk_item_factory_<dump|parse>_rc 
4214         to gtk_accel_map_<save|load>. Also added common stock-icons
4215         to the menu.
4216         
4217         * app/preferences.c : use gtk_button_set_label() instead
4218         of button->child which is gone. Also removed GLIB_CHECK_VERSION.
4220         * app/preferences.c lib/dia_xml.c lib/plug-ins.c :
4221         #ifdef G_OS_WIN32 #include <io.h>, this was formerly done
4222         in config.h.win32
4224         * app/recent_files.c : removed GLIB_CHECK_VERSION
4226         * app/render_eps.c 
4227           plug-ins/metapost/render_metapost.c
4228           plug-ins/pstricks/render_pstricks.c
4229           plug-ins/svg/render_svg.c :
4230         replace getlogin() with g_get_user_name() which always
4231         returns non NULL
4233         * app/render_gdk.c : gdk_region_union_with_rect() modifies
4234         inplace now and returns nothing, also less #hell
4236         * app/render_libart.c : some initial #hell cleaning, SuckFont
4237         still needs to vanish
4239         * app/splash.c : gdk_pixbuf_new_from_file() second arg and
4240         GTK_WINDOW_DIALOG -> GTK_WINDOW_TOPLEVEL
4242         * app/render_pixbuf.c app/sheets.c : plain #hell cleaning
4243         * app/sheets_dialog_callbacks.c : some #hell and adaptions
4244         needed to GtkWrapBox api changes
4247         * lib/charconv.[hc] : removed from build
4248         [changed appropriate]
4249         * lib/prop_inttypes.c lib/prop_text.c : 
4250         all utf-8 cleaning 
4251         * lib/text.c : ported from HEAD but keep original indent
4252         intact. Original was done by Akira TAGOH.
4254         * lib/color.c : GdkColorContext is gone, use GdkColormap instead.
4256         * lib/dia_image.c : gdk_pixbuf_new_from_file() second arg
4258         * lib/dia_xml.c : remove #ifdef GLIB_CHECK_VERSION, it's the
4259         same on all platforms now!
4261         * lib/font.c : still using SuckFont which was an IMPERATIVE FIXME!
4263         * lib/message.c : remove "charconv.h"
4265         * lib/prop_text.c : #define GTK_ENABLE_BROKEN to use GtkText
4267         * lib/plug-in.c :
4268         * lib/sheet.c : convert from DIR to GDir usage
4270         * lib/widgets.c : gtk_menu_(shell_)append and GtkTypeInfo
4272         * lib/widgets.h : include gtk<label|colorseldialog>.h
4275         * objects/fs/flow.c :
4276         * objects/fs/flow-ortho.c : GTK_ENABLE_BROKEN to use GtkText
4278         * objects/custom/custom.c : convert from DIR to GDir usage
4281         * plug-ins/python/makefile.msc : updated for GTK2/Python2.2
4284 2002-05-03  Hans Breuer  <hans@breuer.org>
4286         * lib/dia_xml.c : make the well formed utf8 check
4287         actually work for &#251; (non 7-bit ascii encoding)
4288         and fixed the file re-writing if the check fails.
4289         Thanks to Vitaly Lipatov for noticing the misbehaviour.
4291         * lib/font.c : synchronize #ifdef G_OS_WIN32 with
4292         comment on last ressort font. Thanks to Maxim Sobolev.
4294 2002-06-03  Cyrille Chepelov  <cyrille@chepelov.org>
4296         * sheets/network.sheet.in: corrected a typo in plotter invocation.
4298 2002-06-03  Steffen Macke  <sdteffen@web.de>
4300         * shapes/network/digitizing_board.png:
4301         * shapes/network/digitizing_board.shape:
4302         * shapes/network/plotter.png:
4303         * shapes/network/plotter.shape:
4304         * shapes/network/Makefile.am
4305         * sheets/network.sheet.in: added new plotter and digitizing
4306         board shapes
4307         
4308 2002-06-02  Cyrille Chepelov  <cyrille@chepelov.org>
4310         * lib/font.c: made a symptomatic fix to a segfault reported by 
4311         Jan Keirse <jan.keirse@pandora.be> on a SuSE 7.3 system. This
4312         won't prevent dia from terminating, but should give more
4313         user-friendly information about why did it terminate.
4315         Two patches from <robert.young@dsto.defence.gov.au>:
4316         
4317         * app/display.c: fix the size of the canvas area which gets
4318         redrawn. There was an off-by one error (Closes #83659)
4320         * app/display.c: make sure we redraw all screen only when we
4321         really have to (some update_areas were mistakenly ignored) (Closes
4322         #83496). 
4324         * NEWS: added a new entry for the future. Put there a reminder to
4325         update the dependencies.
4327         * configure.in: put in notes about what will change shortly.
4328         upped the version to 0.90+cvs (did also in config.h.win32)
4329         upped the minimum version for intltools (now 0.21)
4330         
4331 2002-06-01  Cyrille Chepelov  <cyrille@chepelov.org>
4333         * dia.spec:
4334         * configure.in:
4335         * NEWS:
4336         * config.h.win32:
4337         bumped up version number to 0.90. Yay!
4339 2002-05-30  Cyrille Chepelov  <cyrille@chepelov.org>
4341         * doc/pl/Makefile.am:
4342         * doc/en/Makefile.am: fixed a "make install" problem when db2html
4343         is not present (Reported by Andrew Ferrier
4344         <andrew.junk@new-destiny.co.uk>). Fixed another "make distclean"
4345         problem which prevented me from ever seeing the problem in doc/en...
4346         
4347         * Makefile.am: added autogen.sh to the EXTRA_DIST clause.
4348         
4349         * lib/font.c: patch from <robert.young@dsto.defence.gov.au>; add a
4350         way to read the font path from the XFS configuration files in
4351         order to enable FreeType (fixes #83098).
4353         * POTFILES.(in,skip): now skips objects/sybase/sybase.c, which is not
4354         shipped nowadays.
4355                 
4356         * dia.spec:
4357         * configure.in:
4358         * NEWS:
4359         * config.h.win32:
4360         bumped up version number to 0.90.RC3
4362 2002-05-29  Zbigniew Chyla  <cyba@gnome.pl>
4364         * configure.in, doc/Makefile.am, doc/pl/Makefile.am,
4365         doc/pl/authors.sgml, doc/pl/dia-manual.sgml, doc/pl/dia-pl.omf,
4366         doc/pl/intro.sgml, doc/pl/license.sgml, doc/pl/topic.dat
4367         doc/pl/usage-canvas.sgml, doc/pl/usage-customization.sgml,
4368         doc/pl/usage-layers.sgml, doc/pl/usage-loadsave.sgml
4369         doc/pl/usage-objects-selecting.sgml, doc/pl/usage-objects-special.sgml,
4370         doc/pl/usage-objects.sgml, doc/pl/usage-quickstart.sgml:
4371         Added Polish documentation.
4373 2002-05-27  Cyrille Cheeplov  <cyrille@chepelov.org>
4375         * objects/UML/state.c: there was a (gratuitous?) change of on-XML
4376         format for the UML State object. Now there's a hack to reload
4377         older files, and get them converted on the fly. 
4378         Justyna BiaÅ?a <nell@poczta.gazeta.pl> reported this. Thanks!
4380         * lib/properties.h:
4381         * lib/propobject.c:
4382         * lib/proplist.c: Added a new property flag, PROP_FLAG_LOAD_ONLY,
4383         and adapter the proplist predicates. A LOAD_ONLY property is for
4384         when you have legacy to support but can't resist moving your
4385         fields around... (was needed to support the above state.c fix).
4387         If the in-core of your object changes and you need a LOAD_ONLY
4388         property for the old format, you must keep some spare room in your
4389         object's struct to accomodate for the potential old-style
4390         attributes. Then in foo_load(), after having called
4391         object_load_using_properties(), you must inspect the old-style
4392         fields and act accordingly. Don't ever change the on-disk formats...
4394         * objects/UML/object.c:
4395         * objects/UML/small_package.c: added a check against empty
4396         stereotypes still consuming space. Reported by Dolores Alia de
4397         Saravia <loli@unsa.edu.ar>. Thanks!     
4398         
4399 2002-05-26  Cyrille Chepelov  <cyrille@chepelov.org>
4401         * INSTALL: added platform notes from MÃ¥rten Svantesson, for when
4402         using libtool on an AFS partition.
4404         * po/update_potfiles_in.sh: now simply calls the recent intltools 
4405         features; they work better than hand-crafted half-ignorant
4406         scripts. Thanks to Kenneth Rohde Christiansen <kenneth@gnu.org>
4407         for the tip.
4409         * po/POTFILES.in: added back two files update_potfiles_in.sh
4410         didn't take into account. Now this file is not automatically
4411         generated anymore!      
4412         * po/POTFILES.skip: told `intltool-update -m` what files to ignore
4413         (the usual suspects, in fact).
4415         * configure.in: improved the isinf() / isfinite() detection on
4416         Solaris (MÃ¥rten Svantesson)
4417         
4418 2002-05-25  Cyrille Chepelov  <cyrille@chepelov.org>
4420         * configure.in: one expression was replacing $CFLAGS, removing
4421         whatever was previously in.
4422         Added more checks for isinf() and finite() on Solaris.
4424         * lib/geometry.h: added a macro defintion for isinf() if not
4425         HAVE_ISINF. (Hans, you may want to #define HAVE_ISINF if relevant
4426         on Win32)
4428         * app/commands.c: "cut" did not set the 'modified' bit (paste has
4429         been for a little while). Fixes #82994.
4431         * Makefile.am: added more stuff to distclean-local. This should make
4432         "make distcheck" pass! Thanks to the author of
4433         http://mail.gnome.org/archives/gnome-2-0-list/2001-August/msg00212.html
4434         ... I wonder who this Henstridge guy is ... ;-)
4435         Darn. Still doesn't pass. I give up for tonight.
4436         
4437         * po/update_potfiles_in.sh: updated to take care of sheet files,
4438         and to filter out the EML plug-in.
4439         * po/POTFILES.in: updated with all .c and all .sheet.in files 
4441         * po/dia.pot, po/*.po: again updated all .po files with all
4442         strings (with the updated POTFILES). Now with the up-to-date
4443         POTFILES, just all languages have some fuzzy or untranslated
4444         strings (not that the 100% team was that large beforehand...)
4446         * po-checktrans: removed the comment about .po files not holding
4447         all translatable stuff, since now they do.
4448         
4449 2002-05-24  Cyrille Chepelov  <cyrille@chepelov.org>
4451         * dia.spec:
4452         * configure.in:
4453         * NEWS:
4454         * config.h.win32:
4455         bumped up version number to 0.90.RC2
4457 2002-05-20  Hans Breuer  <hans@breuer.org>
4459         * app/load_save.c : starting to increase
4460         Dias tolerance on incomplete/broken files. The 
4461         corresponding bug is #56233. But the patch there does
4462         neither apply anymore nor does it really fix the problem
4463         but only delays it, e.g. even if it would be allowed
4464         to read a file without any layers, the later code can't
4465         handle it.
4466         * lib/dia_xml.c : attribute_<num|first>_data(), data_type()
4467         handle passing in NULL for the node gracefully.
4469         * shapes/network/printer.shape : added two more connection
4470         points - one at each side - to fix bug #60359
4472         * app/commands.c (edit_copy_callback) : 
4473         add ddisplay_do_update_menu_sensitivity() to make 
4474         sequence select-copy-paste work.
4476 2002-05-20  Hans Breuer  <hans@breuer.org>
4478         * app/create_object.c (create_object_button_press) :
4479         added a call to ddisplay_do_update_menu_sensitivity()
4480         to make Ctrl^D etc work after object creation. 
4481         Fixes #80983.
4483 2002-05-18  Lars Clausen  <lrclause@cs.uiuc.edu>
4485         * objects/ER/entity.c: 
4486         * objects/ER/attribute.c: 
4487         * objects/ER/relationship.c: Patch to allow text size change from
4488         Celso Tetsuo Nagase Suzuki.
4490 2002-05-18  Steffen Macke <sdteffen@web.de>
4492         * app/app_procs.c: #ifdef'd xmlerror.h (comes with 
4493         libxml2)
4494         * doc/en/graphics/greendots.png:
4495         * doc/en/home_network.png:
4496         * doc/en/line_props.png: 
4497         * dia-diagram.png:
4498         * dia_gnome_icon.png:
4499         * dia_gnome_menu_icon.png:
4500         * dia_logo.png:
4501         * shapes/network/telephone.png:
4502         * shapes/Logic/and.png:
4503         * shapes/Logic/buffer.png:
4504         * shapes/Logic/connector.png:
4505         * shapes/Logic/inverter.png:
4506         * shapes/Logic/nand.png:
4507         * shapes/Logic/nor.png:
4508         * shapes/Logic/not.png:
4509         * shapes/Logic/or.png:
4510         * shapes/logic/xor.png:
4511         * samples/ER-demo.dia:
4512         * samples/SADT.dia:
4513         * samples/UML-demo.dia:
4514         * samples/chronograms.dia:
4515         * samples/grafcet.dia: re-added as binary files
4517 2002-05-17  Hans Breuer  <hans@breuer.org>
4519         * lib/libdia.def : reflect removing of render_store.[ch]
4521         * */makefile.mingw : remove VERSION definition it's
4522         done in config.h.win32. Dia still doesn't work if
4523         build with mingw ...
4525         * RELEASE-PROCESS : removed */makefile.mingw
4527         * app/sheets_dialog_callbacks.c : if we use those
4528         ugly charconv_gtk_* functions lib/charconv.h needs to
4529         be #included ...
4530         * lib/charconv.h : ... and needs to contain the 
4531         necesseray prototypes _and_ #defines
4533         * plug-ins/shape/shape-export.c : with libxml2 xmlNewGlobalNs
4534         is deprecated and does nothing but spit a warning. This broke
4535         the shape format writing. Fixed.
4536         Also with libxml2 pretty formatted xml isn't the default
4537         anymore, but needs to be enabled explicit: It is done now 
4538         for shape files, which almost always needed to be edited by
4539         hand ... 
4541         * app/app_procs.c : #if G_OS_WIN32 redirect xmlErrorReporting
4542         from stderr - which is invalid on Dia/win32 - to g_print -
4543         which opens up a console window if necessary. This way
4544         a xml-deprecation-error shouldn't stay unnoticed next time
4546 2002-05-17  Steffen Macke <sdteffen@web.de>
4548         * shapes/Misc/folder.png:
4549         * shapes/Misc/file.png: re-added as binary files
4550         
4551 2002-05-16  Lars Clausen  <lrclause@cs.uiuc.edu>
4553         * lib/font.c: Fixed segfault for fonts without family_name.
4555 2002-05-17  Cyrille Chepelov  <cyrille@chepelov.org>
4557         * po/POTFILES.in: added app/sheets_dialog_callbacks.c
4559         * app/sheets_dialog_callbacks.c: While reviewing UTF-8isation upon
4560         Lars' request, minor cosmetic stuff (mostly _() of human-readable
4561         XML comments in .sheet files; one translator booby-trap disarmed).
4563         * lib/charconv.c: moved #hell inside the body of the new
4564         charconv_*gtk* functions (otherwise the Win32 or gtk2.0 linker
4565         will yell)
4566         
4567 2002-05-16  Lars Clausen  <lrclause@cs.uiuc.edu>
4569         * plug-ins/wpg/Makefile.am (INCLUDES): 
4570         * plug-ins/shape/Makefile.am (INCLUDES): 
4571         * plug-ins/svg/Makefile.am (INCLUDES): 
4572         * plug-ins/pstricks/Makefile.am (INCLUDES): 
4573         * plug-ins/metapost/Makefile.am (INCLUDES): Added UNICODE_CFLAGS
4574         and DEBUG_CFLAGS in some missing places.
4576         * MAINTAINERS: New file containing list of known package
4577         maintainers. 
4579         * lib/charconv.h: 
4580         * lib/charconv.c: Charconv versions of some common gtk calls.
4582         * app/sheets_dialog_callbacks.c
4583         (on_sheets_new_dialog_button_ok_clicked),
4584         (on_sheets_dialog_button_edit_clicked),
4585         (on_sheets_dialog_button_remove_clicked),
4586         (on_sheets_edit_dialog_button_ok_clicked):
4587         * app/sheets.c (sheets_optionmenu_create),
4588         (sheets_optionmenu_create): Added utf8 translations.
4590         * app/sheets_dialog.c: 
4591         * app/sheets.c: 
4592         * app/sheets_dialog_callbacks.c: Added some missing _()'s.
4594 2002-05-16  Cyrille Chepelov  <cyrille@chepelov.org>
4596         * po/POTFILES.in: added app/sheets_dialog.c
4598 2002-05-15  Cyrille Chépélov  <cyrille@chepelov.org>
4600         * lib/charconv.c: (charconv_local8_to_utf8),
4601         (charconv_utf8_to_local8): tweaked the warnings to get more 
4602         informations
4603         * lib/font.c: (font_get_suckfont): handled a potential case of
4604         uninitialised data being used (just paranoid)
4605         
4606         * objects/GRAFCET/boolequation.c: (opstring),
4607         (opblock_get_boundingbox), (opblock_draw),
4608         (boolequation_calc_boundingbox): some extra hoops needed now dia
4609         talks UTF8 (but gtk doesn't). More #hell. Beeek. Basically, the
4610         symbols can't yet be used with their proper Unicode cells, since
4611         gtk will demand them in the Symbol font, expressed in the local
4612         8-bit encoding.
4613         
4614         * samples/grafcet.dia: re-saved, now with a fixed bounding box (by
4615         the fix just above).
4617 2002-05-14  Lars Clausen  <lrclause@cs.uiuc.edu>
4619         * app/diagram_tree.c (get_object_name): Check that name property
4620         doesn't have null string.
4622 2002-05-13  Lars Clausen  <lrclause@cs.uiuc.edu>
4624         * autogen.sh (DIE): Added conditional --force to gettextize.
4626         * app/pagesetup.c (pagesetup_ok): Commented out missing Gnome
4627         function call.
4629 2002-05-13  Cyrille Chepelov  <cyrille@chepelov.org>
4631         * RELEASE-PROCESS: added James' notes on how to properly make the
4632         tarball.
4634         * configure.in: removed macro nesting related to libpng.h, which
4635         was causing some problems on some systems (like mine, which made
4636         the snapshots bad).
4638         Made --enable-unicode, previously an option, the mandatory case.
4640         * app/Makefile.am: updated EXTRA_DIST
4641         
4642         * NEWS:
4643         * app/makefile.mingw:
4644         * dia.spec:
4645         * doc/en/dia-manual.sgml:
4646         * plug-ins/makefile.mingw:
4647         * configure.in: bumped up the version number to 0.90.RC1
4649         * lib/render_objects.[ch]:
4650         * po/POTFILES.in: removed render_objects from the build.
4652         * plug-ins/Makefile.am:
4653         * plug-ins/wmf/Makefile.am (new): EXTRA_DIST'ed the WMF plug-in,
4654         so we keep its source in the tarball.
4656         * objects/network/*.c, Makefile.am:
4657         * objects/sybase/*.c, Makefile.am:
4658         * po/POTFILES.in: cleaned up the non-existent files from the po
4659         build process.
4661         * plug-ins/Makefile.am: re-enabled metapost plug-in.
4662         
4663 2002-05-13  Steffen Macke <sdteffen@web.de>
4665         * AUTHORS:
4666         * app/command.c: added M. C. Nelson to the Authors
4667         * sheets/Circuit/Makefile.am: added firewall shape to build
4668         * sheets/network/Makefile.am: added telephone and microphone
4669           shapes to build
4671 2002-05-13  Lars Clausen  <lrclause@cs.uiuc.edu>
4673         * RELEASE-PROCESS: Added list of files that contain the release
4674         number or should otherwise be changed at each release.
4676 2002-05-12  Lars Clausen  <lrclause@cs.uiuc.edu>
4678         * objects/UML/uml.c (uml_operation_read): Forgot to commit this
4679         (reported fixed) bug: POLYMORPHIC -> LEAF for default.
4681 2002-05-12  Hans Breuer  <hans@breuer.org>
4683         * config.h.win32 : changed VERSION to 0.90.RC1
4685         * app/makefile.msc lib/makefile.msc : use renamed
4686         gdk-pixbuf version (same content but renamed because
4687         all the other gtk+ dlls are renamed) to avoid trouble
4688         mixing gtk versions (of which one would not 
4689         be initialized ...
4691         * app/app_procs.c : removed recently unneeded
4692         inclusion of "sheets.h"
4694         * app/render_gdk.c : removed my own debug spew
4695         which should never made it to cvs
4697         * lib/render_object.[hc] : added
4698         #error "File not used anymore."
4700         * lib/libdia.def : updated externals
4702         * app/interface.c : dropped filenames need to be
4703         converted from uri with Gtk+2.0
4705 2002-05-12  Cyrille Chepelov  <cyrille@chepelov.org>
4707         * RELEASE-PROCESS (new): a draft document about how to release. To
4708         be discussed. (already with some input from Hans Breuer)
4710 2002-05-12  Steffen Macke <sdteffen@web.de>
4712         * sheets/Makefile.am: re-added Misc sheet to make process
4713         
4714 2002-05-12  Lars Clausen  <lrclause@cs.uiuc.edu>
4716         * objects/FS/function.c: Added comments to humungous list of menu
4717         items, to aid translators.
4719 2002-05-11  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
4721         * app/menus.c (display_menu_items): Added a few shortcuts for zooms.
4723         * app/menus.c (display_menu_items): Added a few shortcuts for zooms.
4725         * app/interface.c (create_toolbox): Disallow shrinking beyond
4726         requested size.  Fixes bug #59439, and confirms to GTK guidelines
4727         (see gtk_window_set_policy).
4728         (create_sheets): Removed now unnecessary set_usize call.
4730 2002-05-10  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
4732         * lib/beziershape.c (remove_handles): Fixing removal of last
4733         segment.  Undo of removal still hokey.
4735 2002-05-10  Lars Clausen  <lrclause@cs.uiuc.edu>
4737         * lib/bezier_conn.c (remove_handles): Proper offset for fixing
4738         handles. 
4739         * lib/beziershape.c (beziershape_init): Removed early call to
4740         beziershape_update_data where points aren't set yet.
4741         (beziershape_add_segment): Use segment 0 instead of overflowing
4742         points array with segment+1.
4743         (beziershape_remove_segment): Proper offset for fixing
4744         connectionpoints. 
4745         (remove_handles): Proper offset.
4747 2002-05-08  Lars Clausen  <lrclause@cs.uiuc.edu>
4749         * objects/GRAFCET/action.c (action_update_data): Init x value of
4750         click point for call to connpointlist_adjust_count.
4752         * app/modify_tool.c (create_modify_tool): Init tool->auto_scrolled
4754         * app/render_pixmap.c (new_pixmap_renderer): Moved first linestyle
4755         setting to where values are inited.
4757         * lib/polyshape.c (polyshape_init): Removed call to
4758         polyshape_update_data that tried to use uninitialized data.
4760 2002-05-06  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
4762         * app/sheets_dialog.c: Mass removal of //-style comments.  The
4763         Irix compiler doesn't like them:(  I do...
4765 2002-05-06  Lars Clausen  <lrclause@cs.uiuc.edu>
4767         * app/render_libart.c (draw_string): Bail out when no GDK font is
4768         found.
4769         (set_font): Give error when font not found.
4770         (set_fillstyle): Intlized error msg.
4772         * app/pagesetup.c (pagesetup_ok, pagesetup_apply): Sets diagram
4773         modified when applied (and ok only does apply if apply is set
4774         sensitive).  Fixes bug #75623.
4776 2002-05-06  Pablo Saratxaga  <pablo@mandrakesoft.com>
4778         * configure.in: Added Vietnamese (vi) to ALL_LINGUAS
4780 2002-05-05  Steffen Macke <sdteffen@web.de>
4782         * app/Makefile.am: added $(UNICODE_CFLAGS)
4783         
4784 2002-05-02  Lars Clausen  <lrclause@cs.uiuc.edu>
4786         * app/commands.c (help_manual_callback): Check return value of
4787         opendir.
4789         * plug-ins/xfig/Makefile.am (INCLUDES): Added DEBUG_FLAGS
4791         * plug-ins/xfig/xfig-import.c: Fixed misspelled Poly_L_ine, added
4792         checks for errors.
4794 2002-04-30  Lars Clausen  <lrclause@cs.uiuc.edu>
4796         * app/render_gdk.c (draw_string): Extra free killed.  Thanks valgrind!
4798         * objects/UML/uml.c (uml_operation_read): Fix of UML default
4799         inheritance. 
4801 2002-04-30  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
4803         * app/filedlg.c (file_save_as_callback, file_save_as_ok_callback):
4804         Added button to toggle diagram compression.
4806 2002-04-29  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
4808         * lib/font.c: Support for loading extra kerning files, plus got
4809         rid of rounding errors.  Bounding box mostly perfect for freetype
4810         fonts.
4811         (font_string_width): Fudge factor to get around nonlinearity of
4812         font scaling.
4814 2002-04-29  Lars Clausen  <lrclause@cs.uiuc.edu>
4816         * lib/font.c (font_string_width): YA font calculation scheme, with
4817         comments.
4819         * objects/UML/class.c (umlclass_calculate_data): Uses the same
4820         font for drawing and calculating now.
4822         * configure.in: Added utime.h check.
4824         * app/render_gdk.c (draw_string): Uses gdk_draw_text_wc when in
4825         GTK_DOESNT_TALK_UTF8_WE_DO.  Thus it matches the string width calc.
4827 2002-04-26  Hans Breuer  <hans@breuer.org>
4829         [ Instead of fixing about 70 occurances in 20 files
4830           where GTK_TALKS_UTF8_WE_DONT needed to be handled
4831           Dia on win32 from now on uses glib-2.0 and not 
4832           only talks utf-8 with gtk-1.3 but also internally.
4833           GTK_TALKS_UTF8_WE_DONT isn't supported/needed
4834           anymore. ]
4836         * config.h.win32 : #define UNICODE_WORK_IN_PROGRESS
4837         #undef GTK_TALKS_UTF8_WE_DONT
4839         * */makefile.msc : changes to use glib-2.0 (still
4840         using gtk+1.3(win32-production)
4842         * app/disp_callbacks.c : remove GTK_TALKS_UTF8_WE_DONT,
4843         adapt kevent->string handling, add <string.h>
4844         * app/render_gdk.c (get_text_width) : the length given
4845         is in chars, gdk_text_width() needs bytes
4847         * app/render_libart.c : 
4848         * app/render_pixmap.c : remove GTK_TALKS_UTF8_WE_DONT
4849         (could simplify the same way as done in render_gdk.c)
4851         * app/diagram_tree.c app/paginate_gdiprint.cpp
4852           app/sheets.c :
4853         * lib/prop_basic.c lib/prop_geomtypes.c 
4854           lib/propdialgs.c lib/propobject.c :
4855         added <string.h> which is now removed from charconv.h
4857         * lib/charconv.h : optional use infrastructure from
4858         glib-2.0 -> only five direct function mapping left
4860         * lib/charconv.c : avoid to build this with glib-2.0
4862         * lib/font.c : no string conversion needed anymore      
4863         when Dia and Gtk talk utf-8, also code adaptions
4864         for GLIB_CHECK_VERSION(2,0,0)
4866         * lib/libdia.def : removed charconv functions
4868         * lib/prop_inttypes.c : removed GTK_TALKS_UTF8_WE_DONT,
4869         replace charconv_unichar_to_utf8() with g_unichar_to_utf8()
4871         * lib/prop_text.c lib/prop_widgets.c lib/font.c : 
4872         removed GTK_TALKS_UTF8_WE_DONT
4874         * lib/text.c : finally(?) fixed cursor <place|move>ment 
4875         for Umlauts. Also fixed char insertion, still wondering
4876         how this could ever work. Does realloc on Linux 
4877         initialize the memory with zeros ?
4879         * objects/chronogram/chronoline_event.c
4880           objects/grafcet/boolequation.c :
4881         there is no uni_get_utf8 when building for glib-2.0.
4882         Replace with g_utf8_get_char() and g_utf8_next_char().
4884         * objects/uml/stereotype.c (bracketted_to_string) : 
4885         simplify while adding code for glib-2.0 build
4887 2002-04-27  Lars Clausen  <lrclause@cs.uiuc.edu>
4889         * app/diagram.h: Autosave field
4890         * app/diagram.c (diagram_set_modified): Sets autosave field.
4891         
4892         * objects/UML/usecase.c (usecase_update_data): 
4893         * objects/flowchart/ellipse.c (ellipse_update_data): 
4894         * objects/flowchart/parallelogram.c (pgram_update_data): 
4895         * objects/flowchart/diamond.c (diamond_update_data): 
4896         * objects/custom/custom_object.c (custom_update_data): 
4897         * objects/UML/state.c (state_update_data): 
4898         * objects/UML/small_package.c (smallpackage_update_data): 
4899         * objects/UML/object.c (objet_update_data): 
4900         * objects/UML/note.c (note_update_data): 
4901         * objects/UML/node.c (node_update_data): 
4902         * objects/UML/component.c (component_update_data): 
4903         * objects/UML/classicon.c (classicon_update_data): 
4904         * objects/UML/actor.c (actor_update_data): 
4905         * objects/SADT/box.c (sadtbox_update_data): 
4906         * objects/FS/function.c (function_update_data): 
4907         All now update text boundaries from update_data.
4908         
4909         * lib/widgets.c (dia_font_selector_set_styles): Made the style set
4910         correctly. 
4912 2002-04-26  Hans Breuer  <hans@breuer.org>
4914         * config.h.win32 : added VERSION definition here
4915         (and removed from makefile.msc's)
4917         * app/makefile.msc : added new files
4919         * app/app_procs.c (app_init): remove sheets_dialog_create()
4920         from start-up and ... 
4922         * app/sheet.c (sheets_dialog_show_callback) : ... lazy create
4923         sheet_dialog here when it is really needed.
4924         #include "../lib/message.h", make sheets_dialog_create() 
4925         return it's success or failing on (!custom_type_symbol). 
4926         Although editing shapes is nice IMHO it isn't crucial enough 
4927         to abort() Dia if       it isn't possible.
4929         * app/sheet.h : adapt create_sheet_dialog() prototype
4931         * app/sheets_dialog.c : add #ifdef HAVE_UNISTD_H
4933         * app/sheets_dialog_callbacks.c : #ifdef HAVE_UNISTD_H and
4934         #ifdef HAVE_UTIME_H. Otherwise #include <sys/utime.h> and
4935         name space corrections for utime() and utim_buf #ifdef
4936         G_OS_WIN32
4938         * lib/libdia.def : export new sheet functions
4940         * lib/makefile.msc : added new files
4942         * lib/render.c : don't put draw_bezier_with_arrows() in
4943         the DrawLineWithArrowsFunc slot
4945         * objects/custom/custom_object.c : #include <gmodule.h>
4946         and export 'custom_type' via G_MODULE_EXPORT
4948         * objects/uml/class_dialog.c : removed 'incompatible 
4949         types' warnings. Some refactoring while making it fit
4950         on screen with 800x600 again.
4952         * plug-ins/python/pydia-cpoint.h : add PyDiaConnectionPoint_Check
4954         * plug-ins/python/pydia-handle.h : extra parameter to
4955         PyDiaHandle_New to store the owner of the handle
4956         * plug-ins/python/pydia-handle.c : store handle owner
4957         on construction and use it in new method .connect()
4958         * plug-ins/python/pydia-object.c plug-ins/python/pydia-diagram.c : 
4959         adapt to changed prototype
4961 2002-04-24  Lars Clausen  <lrclause@cs.uiuc.edu>
4963         * lib/text.c (text_calc_boundingbox): Will now return early if box
4964         passed is NULL.
4966         * objects/flowchart/box.c (box_update_data): Now updates text
4967         width info from update_data.
4969 2002-04-23  Steffen Macke <sdteffen@web.de>
4971         * plug-ins/xfig/xfig-import.c: fixed text import
4972         
4973 2002-04-22  Lars Clausen  <lrclause@cs.uiuc.edu>
4975         * app/export_png.c: Moved dialog functions to their own file.
4976         * app/dialogs.[ch]: New files with standard functions for creating
4977         small, transient dialogs (e.g. export options).
4978         * app/Makefile.am: Added dialogs.[ch]
4980 2002-04-19  Steffen Macke <sdteffen@web.de>
4982         * shapes/Misc/folder.*:
4983         * shapes/Misc/file.*:
4984         * shapes/Misc/Makefile.am:
4985         * shapes/Makefile.am:
4986         * sheets/Misc.sheet.in:
4987         * sheets/Makefile.am:
4988         * configure.in: added new Misc sheet containing filesystem shapes
4989         
4990 2002-04-18  Lars Clausen  <lrclause@cs.uiuc.edu>
4992         * app/lineprops_area.c: Arrow selector in toolbox changed to use
4993         standard arrowdraw code.  Line is thinner to make some arrowheads
4994         distinguishable. 
4996 2002-04-18  Steffen Macke <sdteffen@web.de>
4998         * sheets/network.sheet.in:
4999         * shapes/network/telephone.shape:
5000         * shapes/network/Makefile.am: added telephone shape
5001         
5002 2002-04-16  Steffen Macke <sdteffen@web.de>
5004         * sheets/EML.sheet.in: commented out unavailable shapes
5005         
5006 2002-04-15  M.C. Nelson <mcn@kobayashimaru.org>
5008         * app/sheets_dialog_callbacks.c:  Fixed segfault caused by mis-ordered
5009           variable assignment.
5010         
5011 2002-04-15  Steffen Macke <sdteffen@web.de>
5013         * plug-ins/dxf/dxf-import.c: text import works again
5014         * shapes/Pneumatic/Makefile.am: added compush shape
5015         * sheets/Pneumatic.sheet.in: commented out unavailable shapes dist33
5016         and dist53
5017         
5018 2002-04-11  M.C. Nelson <mcn@kobayashimaru.org>
5020         * All these modifications are for the 'Sheets and Objects' dialog
5021           (new feature):
5023         * app/pixmaps/line_break.xpm: new icon representing a line break.
5024         
5025         * app/pixmaps/n_a.xpm: new empty icon representing not available.
5027         * app/Makefile.am: added sheets_*.[ch] files to compile list.
5028         
5029         * app/menus.c: added GNOME and gtk menu items for 'Sheets and Objects'
5030         
5031         * app/sheets_dialog.c: [new file] definition of 'Sheets & Objects' dlgs
5033         * app/sheets_dialog.h: [new file] support for Sheets & Objects dlgs 
5034         
5035         * app/app_procs.c: added call to sheets_dialog_create() in app_init()
5036         
5037         * app/sheets_dialog_callbacks.c: [new file] callbacks for S & O dialogs
5039         * app/sheets_dialog_callbacks.h: [new file] support for " " "
5041         * app/interface.c: added 'interface_current_sheet_name' global to 
5042           fill_sheet_wbox(); made fill_sheet_menu() non-static
5044         * app/interface.h: added extern declaration for aboves.
5046         * app/sheets.c: [new file] instantiation and other funcs for S & O dlgs
5048         * app/sheets.h: [new file] declarations for backing store structures
5050         * lib/sheet.c: modification of new_sheet() parameters; introduction
5051           of USER and SYSTEM scope for sheets; procedure for sorting sheets;
5052           changes to load_register_sheet().
5054         * lib/sheet.h: added 'user_data_type' field to SheetObject structure;
5055           added 'has_icon_on_sheet' flag to SheetObject structure; added 
5056           'filename', 'scope', 'shadowing' fields to Sheet structure.
5058         * lib/plug-ins.c: moved _PluginInfo declaration to header file where
5059           it belongs.
5061         * lib/plug-isn.h: see above.
5063         * lib/object.c: added 'sheet.h' to include list; added several 
5064           functions
5065           to detect objects which are not found on any sheet (for future use)
5066           object_type_detect_nosheet_callback(), object_types_detect_nosheet(),
5067           object_type_get_sheet_name(), object_type_strip_sheet_from_name().
5069         * lib/object.h: added public declarations for above functions where
5070           necessary.
5072         * objects/custom/custom.c: made custom_object_load() non-static so we
5073           can load and interpret .shape files from the Sheets & Objects dialog
5075         * objects/custom/custom_object.c: made 'custom_type' non-static so 
5076           we can differentiate between SVG shapes and other types.a
5078 2002-04-07  Hans Breuer  <hans@breuer.org>
5080         * app/object_ops.c (object_list_align_v): Fix the 'Leak fix'
5081         from 2002-01-22 to not destroy diagram->data->selected. 
5082         Avoids to crash on Objects/Align/Vertical/Top
5084         * app/render_eps.c (draw_string) : un-const buffer
5085         It isn't at all const (g_malloc(), assignment, g_free()).
5086         Doesn't gcc catch such ?
5088         * lib/arrows.h : prototype calculate_arrow_point()
5090         * lib/font.c (font_get_suckfont) : no need to
5091         special case gdk_draw_string() with GTK_TALKS_UTF8,
5092         cause all the parameter differences are handled above
5094         * lib/libdia.def : updated externals
5096         * lib/makefile.msc : removed string_prerenderer, added render
5098         * lib/render.c (draw_rect) : don't pass a Point** if a Point*
5099         is expected. [Sometimes it's good to read compiler warnings.]
5101         * objects/standard/image.c : simplified by use of g_strconcat()
5103         * plug-ins/python/makefile.msc : updated for Python 2.2
5105 2002-04-03  Lars Clausen  <lrclause@cs.uiuc.edu>
5107         * objects/standard/zigzagline.c (zigzagline_draw): Fixed
5108         directionality problem for zero-length line segments.
5110 2002-03-28  Lars Clausen  <lrclause@cs.uiuc.edu>
5112         * app/diagram.c (diagram_ungroup_selected) 
5113         (diagram_update_menu_sensitivity): Now allows ungrouping of
5114         several groups at once.
5116 2002-03-15  Lars Clausen  <lrclause@cs.uiuc.edu>
5118         * lib/render.c, all renderers: Binary incompatibility, change to
5119         expandable renderops structure.
5121 2002-03-15  Steffen Macke <sdteffen@yahoo.com>
5123         * objects/standard/Makefile.am:
5124         * objects/network/Makefile.am:
5125         * objects/UML/Makefile.am:
5126         * objects/ER/Makefile.am:
5127         * objects/FS/Makefile.am:
5128         * objects/flowchart/Makefile.am:
5129         * objects/custom/Makefile.am:
5130         * objects/GRAFCET/Makefile.am:
5131         * objects/chronogram/Makefile.am:
5132         * objects/SADT/Makefile.am:
5133         * plug-ins/cgm/Makefile.am:
5134         * plug-ins/pstricks/Makefile.am:
5135         * plug-ins/hpgl/Makefile.am:
5136         * plug-ins/wpg/Makefile.am:
5137         * plug-ins/svg/Makefile.am:
5138         * plug-ins/shape/Makefile.am: added $(UNICODE_CFLAGS)
5139         
5140 2002-03-13  Lars Clausen  <lrclause@cs.uiuc.edu>
5142         * app/render_eps.c: Support for dumping TrueType fonts (taken from
5143         ttfps).
5145 2002-03-12  Lars Clausen  <lrclause@cs.uiuc.edu>
5147         * lib/render.c: New abstract super class for renderers.
5149 2002-03-07  Akira TAGOH  <tagoh@redhat.com>
5151         * objects/ER/attribute.c (attribute_save): save a font property.
5152         (attribute_load): load a font property, and if can't load it, it's
5153         initialized.
5155         * objects/ER/entity.c (entity_save): save a font property.
5156         (entity_load): load a font property, and if can't load it, it's
5157         initialized.
5159         * objects/ER/relationship.c (relationship_save): save a font property.
5160         (relationship_load): load a font property, and if can't load it, it's
5161         initialized.
5163         * objects/UML/class.c (fill_in_fontdata): don't replace if it already
5164         has a vaule.
5165         (umlclass_save): save the font and the font size properties.
5166         (umlclass_load): load the font and the font size properties.
5168 2002-03-05  Cyrille Chepelov  <cyrille@chepelov.org>
5170         * lib/string_prerenderer.[ch] (REMOVED):
5171         * lib/render.h:
5172         * lib/diagramdata.c:
5173         * lib/Makefile.am:
5174         * app/render_eps.c: got rid of the string-specific string
5175         prerenderer, transitioned its functionality towards Lars'
5176         two-phase rendering
5178 2002-03-05  Lars Clausen  <lrclause@cs.uiuc.edu>
5180         * configure.in: Using Freetypes own check for ver >= 1.0.5.  You
5181         may need to rerun aclocal.
5183 2002-03-04  Lars Clausen  <lrclause@cs.uiuc.edu>
5185         * lib/font.c: First attempt at Unicodeness for Freetype.
5187 2002-03-02  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
5189         * lib/font.c (font_string_width): Fixed font_string_width for
5190         freetype.  BB is now almost right.
5192 2002-03-01  Lars Clausen  <lrclause@cs.uiuc.edu>
5194         * app/render_eps.h: 
5195         * app/paginate_psprint.c (paginate_psprint): 
5196         * lib/font.c: 
5197         * app/render_eps.c: Support for dumping postscript fonts into
5198         postscript files with freetype.  Fairly primitive, but works.
5199         Unicode version may have problems.
5201 2002-02-28  Akira TAGOH  <tagoh@redhat.com>
5203         * objects/UML/class_dialog.c (class_read_from_dialog)
5204         (class_fill_in_dialog), (class_create_page): add the font selector and
5205         the font size selector.
5207         * objects/UML/class.c (umlclass_draw): uses each font_height.
5208         (umlclass_calculate_data): ditto.
5209         (fill_in_fontdata): add initial value of new font_height.
5210         (umlclass_copy): add new font_height.
5212 2002-02-27  Cyrille Chepelov  <chepelov@calixo.net>
5214         Patch from Geoff Gerrietts <ggerrietts@yahoo.com>:
5215         
5216         * lib/font.c: calculate font metrics properly and stop guessing at
5217         string widths.
5219 2002-02-28  Akira TAGOH  <tagoh@redhat.com>
5221         * configure.in: changed gtk_advancement value to dia_talks_utf8.
5222         right now Dia is working with UTF-8 internally. it means Dia probably
5223         support most languages also including the languages which heretofore
5224         didn't work correctly.
5226 2002-02-26  Akira TAGOH  <tagoh@redhat.com>
5228         * objects/FS/function.c: add related text properties.
5229         (function_get_props), (function_set_props): add handling attribute.
5231         * objects/FS/flow.c: add related text properties.
5232         (flow_get_props), (flow_set_props): add handling attribute.
5234         * objects/FS/flow-ortho.c: add related text properties.
5235         (orthflow_set_props), (orthflow_get_props): add handling attribute.
5237         * objects/ER/relationship.c: add PROP_STD_TEXT_FONT to property.
5239         * objects/ER/entity.c: ditto.
5241         * objects/ER/attribute.c: ditto.
5243 2002-02-26  Cyrille Chepelov  <cyrille@chepelov.org>
5245         Patch contributed by Geoff Gerrietts <ggerrietts@yahoo.com>:
5246         
5247         * autogen.sh: add a check for missing intltoolize.
5249 2002-02-20  Akira TAGOH  <tagoh@redhat.com>
5251         * lib/ps-utf8.c (unicode_to_ps_name): if this function calls with same
5252         charcode, it was registered the duplicate item to HashTable. fix.
5254         * app/render_gnomeprint.c (get_width_string): add new function.
5255         (draw_string): fix non-multibyte specific code.
5257 2002-02-19  Cyrille Chepelov  <cyrille@chepelov.org>
5259         Patch contributed by Matthieu Sozeau <mattam@netcourrier.com>:
5260         
5261         * lib/font.c: do not try to search paths that do not begin with
5262         '/', like X Font Server addresses.
5263         
5264         * objects/UML/message.c (message_draw): free mname when not 
5265         message->text but CREATE or DESTROY.
5266         
5267         * objects/UML/uml.h:
5268         * objects/UML/uml.c:
5269         * objects/UML/class_dialog.c: added code to handle a stereotype 
5270         attribute for operations.
5272 2002-02-19  Akira TAGOH  <tagoh@redhat.com>
5274         * lib/Makefile.am: add LIBART_CFLAGS.
5276 2002-02-15  Hans Breuer  <hans@breuer.org>
5278         * lib/font.c (font_get_suck_font): the black and white pixel values 
5279         need to be taken from a 1 bit colormap rather than the default colormap.
5280         (fixed again, last time was 2000-05-26)
5282         Also handle the case where GTK_TALKS_UTF8 and expects all strings
5283         passed in to be in this encoding.
5285         * lib/libdia.def : export suck_font_free()
5287         * lib/text.c (text_draw) : avoid circular dependency to ../app
5288         at least for the !USE_XIM case, where it is unnecessary.
5290 2002-02-15  Cyrille Chepelov  <cyrille@chepelov.org>
5292         Changes contributed by Matts Kivik <kivik@firstlinux.net>:
5293         
5294         * shapes/Circuit/microphone_de.(shape|xpm) (NEW):
5295         * sheets/Circuit.sheet.in: added new shape microphone
5296         * shapes/Circuit/speaker_de.shape: Added a connection point.
5297         
5298 2002-02-13  Akira TAGOH  <tagoh@redhat.com>
5300         * app/render_libart.c (draw_string): fixed build issue for Win32.
5302         * lib/font.c (font_get_suckfont): fixed typo. it could't build under
5303         Win32.
5305         * configure.in: fixed testing gtk_advancement.
5307         * app/render_gnomeprint.c (draw_string): uses utfchar instead of char.
5309 2002-02-12  Akira TAGOH  <tagoh@redhat.com>
5311         * lib/text.c (text_draw): fixed XIM position, when menubar is shown for
5312         diagram window.
5314 2002-02-11  Lars Clausen  <lrclause@cs.uiuc.edu>
5316         * app/group.c (group_copy): Made new object properly initialized
5317         before copy.
5319 2002-02-11  Steffen Macke <sdteffen@yahoo.com>
5321         * app/Makefile.am: added plug-ins to DIA_LIB_PATH in run_dia.sh
5322         
5323 2002-02-10  Akira TAGOH  <tagoh@redhat.com>
5325         * lib/text.c (text_draw): fixed XIM transaction.
5327         * app/interface.c (create_display_shell): add signal for
5328         size_allocate.
5330         * app/disp_callbacks.c (ddisplay_size_allocate): add new function for
5331         XIM transaction.
5332         (set_input_dialog): remove.
5333         (ddisplay_canvas_events): remove XIM transaction. it can't transact
5334         correctly on this function.
5336 2002-02-10  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
5338         * app/app_procs.c:
5339         * app/export_png.c: Added checks for interactivity (maybe this
5340         should be a hook after all?).
5342         * app/filedlg.c (file_export_callback): Made export dialog add
5343         suffix when reopened.
5345         * app/export_png.c: Added dialog asking for export size.
5347 2002-02-09  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
5349         * lib/widgets.c: Fixed font reselection problem and first font
5350         bogus warning.
5352         * objects/UML/actor.c (actor_update_data): Changed to have
5353         connection points below text.
5355 2002-02-08  Akira TAGOH  <tagoh@redhat.com>
5357         * lib/text.c (text_split_line): use g_strndup() instead of g_malloc()
5358         and memcpy().
5360 2002-02-07  Akira TAGOH  <tagoh@redhat.com>
5362         * lib/font.c (font_get_suckfont): rewrited. generating suckfont from
5363         strings which is given.
5364         (suck_font): remove. it's any longer needed.
5366         * app/render_libart.c (set_font): don't get suckfont.
5367         (draw_string): get suckfont only which is needed for now.
5369 2002-02-05  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
5371         * lib/text.c: Fixes for misunderstood width functions.
5373 2002-02-05  Hans Breuer  <hans@breuer.org>
5375         * lib/dia_xml.c : use g_strconcat() instead of 
5376         malloc, strcpy, strcat dance
5377         * app/properties.c : same here and plug memory leak
5378         (gtk functions don't eat strings)
5380         * objects/UML/message.c : there is no g_sprintf()
5381         use g_strdup_printf() instead ...
5383 2002-02-05  Akira TAGOH  <tagoh@redhat.com>
5385         * lib/message.c (gtk_message_internal): doesn't need to convert to
5386         UTF-8.
5388         * app/render_libart.c (draw_string): fixed transaction for UTF-8
5389         support.
5390         (get_text_width): ditto.
5392         * app/Makefile.am (EXTRA_DIST):
5393         s/paginate_gdiprint.c/paginate_gdiprint.cpp/
5395         * app/render_gdk.c (gdk_freetype_copy_glyph): fixed build issue.
5396         This function needs ifdef HAVE_FREETYPE because don't use it for
5397         --disable-freetype
5399 2002-02-04  Cyrille Chepelov  <cyrille@chepelov.org>
5401         * NEWS: updated with the new dependencies.
5402         
5403         Patch from Matthieu Sozeau <mattam@netcourrier.com>:
5405         * objects/UML/class.h:
5406         * objects/UML/class.c:  
5407         * objects/UML/class_dialog.c: added code to handle the UMLParameterKind
5408         property using a GtkMenu. Options are Undefined, In, Out, In & Out
5410 2002-02-04  Lars Clausen  <lrclause@cs.uiuc.edu>
5412         * app/render_libart.c: Slow but working libart freetype renderer,
5413         with color!
5415 2002-02-03  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
5417         * app/render_gdk.c (draw_string): Fixed gc_function bug.
5419         * lib/widgets.c (dia_font_selector_init): Sorts the font list.
5421         * lib/font.c (freetype_render_string): 
5422         * lib/font.h:
5423         * app/render_gdk.c:
5424         * app/render_gdk.h: Changed freetype_render_string to use
5425         callback.  Rendering is broken.
5427 2002-02-03  Cyrille Chepelov  <cyrille@chepelov.org>
5429         Patch from Matthieu Sozeau <mattam@netcourrier.com>:
5431         * objects/UML/uml.h:    
5432         * objects/UML/uml.c: added UMLInheritanceType and isQuery
5433         (constant) UML Operation attributes. UMLInheritanceType is either
5434         UML_ABSTRACT or UML_POLYMORPHIC  or UML_LEAF.
5436         * objects/UML/class.h:
5437         * objects/UML/class.c:  
5438         * objetcs/UML/class_dialog.c: added code to handle new
5439         UMLOperation attributes via a GtkMenu and a checkbox.
5441 2002-02-03  Akira TAGOH  <tagoh@redhat.com>
5443         * app/disp_callbacks.c (ddisplay_realize): fixed XIM issue.
5444         several client doesn't work with previous codes.
5446 2002-02-01  Lars Clausen  <lrclause@cs.uiuc.edu>
5448         * lib/font.c (freetype_render_string): Kerning.  Very few fonts
5449         seem to use it.
5451 2002-02-02  Akira TAGOH  <tagoh@redhat.com>
5453         * app/disp_callbacks.c (ddisplay_canvas_events): fixed crashes,
5454         when doing the operation like invert the objects after active view is
5455         destroyed. when changes focus, it needs to set active_display.
5457         * app/layer_dialog.c (dia_layer_update_from_layer):
5458         (layer_dialog_edit_layer): need to convert to locale encoding
5459         if GTK_DOESNT_TALK_UTF8_WE_DO is defined.
5460         (edit_layer_ok_callback):
5461         need to convert to UTF8 if GTK_DOESNT_TALK_UTF8_WE_DO is defined.
5463         * lib/diagramdata.c (new_diagram_data): ditto.
5465         * app/layer_dialog.c (layer_dialog_new_callback): ditto.
5467         * lib/diagramdata.c (new_layer): use utfchar instead of char for
5468         argument.
5470         * lib/widgets.c: if HAVE_FREETYPE isn't defined, it can't build. fixed.
5471         (dia_font_selector_set_styles): when HAVE_FREETYPE is defined only,
5472         it's needed for now. also this function needs prototype declaration.
5474 2002-01-31  Lars Clausen  <lrclause@cs.uiuc.edu>
5476         * lib/widgets.c: Style now functional on font selector.  Some leak
5477         possible, but doesn't show up under stress test.
5479 2002-01-31  Akira TAGOH  <tagoh@redhat.com>
5481         * app/plugin-manager.c (clist_select_row): name and description needs to
5482         convert to locale encoding, when GTK_DOESNT_TALK_UTF8_WE_DO is defined.
5483         (get_plugin_manager): ditto.
5485         * lib/plug-ins.c (dia_plugin_info_init): name needs to convert to UTF-8.
5487         * app/diagram_tree.c (get_object_name): fixed transaction for UTF-8
5488         support.
5490         * lib/prop_text.c (stringprop_reset_widget): fixed crashes,
5491         when prop->string_data is NULL.
5493 2002-01-30  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
5495         * lib/widgets.c: 
5496         * lib/widgets.h: New font selector separating font and style.
5497         Style not functional yet.
5499 2002-01-30  Lars Clausen  <lrclause@cs.uiuc.edu>
5501         * lib/text.c: 
5502         * app/render_gdk.c (draw_string): More freetype support, now
5503         renders text.  Still broken is font selection and exporting.
5505 2002-01-30  Akira TAGOH  <tagoh@redhat.com>
5507         * objects/chronogram/chronoref.c (chronoref_create): missing gettextize
5508         for font.
5510         * objects/chronogram/chronoline.c (chronoline_create): ditto.
5512         * objects/UML/usecase.c (usecase_create): ditto.
5514         * objects/UML/state.c (state_create): ditto.
5516         * objects/UML/object.c (objet_create): ditto.
5518         * objects/UML/node.c (node_create): ditto.
5520         * objects/UML/message.c (message_create): ditto.
5522         * objects/UML/component.c (component_create): ditto.
5524         * objects/UML/classicon.c (classicon_create): ditto.
5526         * objects/UML/actor.c (actor_create): ditto.
5528         * objects/SADT/box.c (sadtbox_create): ditto.
5530         * objects/SADT/annotation.c (annotation_create): ditto.
5532         * objects/GRAFCET/transition.c (TRANSITION_FONT): ditto.
5534         * objects/GRAFCET/step.c (STEP_FONT):
5535         * (step_create): ditto.
5537         * objects/GRAFCET/condition.c (CONDITION_FONT): ditto.
5539         * objects/GRAFCET/action.c (ACTION_FONT):
5540         (action_create): ditto.
5542         * objects/FS/function.c (function_create): ditto.
5544         * objects/FS/flow.c (flow_create):
5545         (flow_load): 
5546         (flow_apply_defaults): ditto.
5548         * objects/FS/flow-poly.c (flow_create):
5549         (flow_load):
5550         (flow_apply_defaults): ditto.
5552         * objects/FS/flow-ortho.c (orthflow_create):
5553         (orthflow_load):
5554         (orthflow_apply_defaults): ditto.
5556         * objects/ER/relationship.c: use utfchar instead of char for structure.
5557         (relationship_create): name needs to convert to UTF-8.
5559         * objects/ER/attribute.c: use utfchar instead of char for structure.
5560         (attribute_create): name needs to convert to UTF-8.
5562         * objects/ER/entity.c: use utfchar instead of char for structure.
5563         (entity_create): name needs to convert to UTF-8.
5565         * app/interface.c (fill_sheet_wbox): needs to convert UTF-8 to locale
5566         encoding for tooltips, if GTK_TALKS_UTF8 isn't defined.
5567         (fill_sheet_menu): needs to convert UTF-8 to locale encoding for menu
5568         items. if GTK_TALKS_UTF8 isn't defined.
5570 2002-01-29  Akira TAGOH  <tagoh@redhat.com>
5572         * objects/UML/class.c (umlclass_calculate_data): fixed malloc size.
5573         it was my careless mistake...
5575         * lib/attributes.c (attributes_set_default_font): temporarily gettextize
5576         a font name, because there are strings which isn't shown by "Courier".
5577         We need to consider a way to feel free to choose a font at runtime.
5579         * lib/render_object.c (render_object_load): ditto.
5581         * lib/text.c (data_text): ditto.
5583         * objects/EML/instantiation.c (instantiation_create): ditto.
5585         * objects/EML/interaction-ortho.c (interaction_ortho_create):
5586         (interaction_ortho_load): ditto.
5588         * objects/EML/interaction.c (interaction_create):
5589         (interaction_load): ditto.
5591         * objects/EML/process.c (fill_in_fontdata): ditto.
5593         * objects/ER/attribute.c (attribute_create): 
5594         (attribute_load): ditto.
5596         * objects/ER/entity.c (entity_create): 
5597         (entity_load): ditto.
5599         * objects/ER/relationship.c (relationship_create): 
5600         (relationship_load): ditto.
5602         * objects/UML/association.c (association_create): 
5603         (association_load): ditto.
5605         * objects/UML/class.c (fill_in_fontdata): ditto.
5607         * objects/UML/constraint.c (constraint_create): ditto.
5609         * objects/UML/dependency.c (dependency_create): ditto.
5611         * objects/UML/generalization.c (generalization_create): ditto.
5613         * objects/UML/implements.c (implements_create): ditto.
5615         * objects/UML/large_package.c (largepackage_create): ditto.
5617         * objects/UML/note.c (note_create): ditto.
5619         * objects/UML/realizes.c (realizes_create): ditto.
5621         * objects/UML/small_package.c (smallpackage_create): ditto.
5623         * objects/custom/shape_info.h (FONT_DEFAULT): ditto.
5625         * objects/custom/custom_object.c (custom_create): ditto.
5627         * objects/network/antenna.c (render_to_store): ditto.
5629         * objects/network/computer.c (render_to_store): ditto.
5631         * objects/network/disc.c (render_to_store): ditto.
5633         * objects/network/flash.c (render_to_store): ditto.
5635         * objects/network/hub.c (render_to_store): ditto.
5637         * objects/network/modem.c (render_to_store): ditto.
5639         * objects/network/modularswitch.c (render_to_store): ditto.
5641         * objects/network/monitor.c (render_to_store): ditto.
5643         * objects/network/printer.c (render_to_store): ditto.
5645         * objects/network/rj45plug.c (render_to_store): ditto.
5647         * objects/network/scead-plug.c (render_to_store): ditto.
5649         * objects/standard/textobj.c (textobj_load): ditto.
5651         * objects/sybase/client.c (render_to_store): ditto.
5653         * objects/sybase/dataserver.c (render_to_store): ditto.
5655         * objects/sybase/ltm.c (render_to_store): ditto.
5657         * objects/sybase/repserver.c (render_to_store): ditto.
5659         * objects/sybase/rsm.c (render_to_store): ditto.
5661         * objects/sybase/stableq.c (render_to_store): ditto.
5663         * plug-ins/dxf/dxf-import.c (read_entity_text_dxf): ditto.
5665         * objects/UML/uml.h (UML_STEREOTYPE_START):
5666         (UML_STEREOTYPE_END): changes default strings.
5668 2002-01-28  Akira TAGOH  <tagoh@redhat.com>
5670         * objects/UML/stereotype.c (string_to_bracketted): fixed transaction
5671         for UTF-8 support. if GTK+ and Dia don't handle UTF-8, all of characters
5672         which is given to arguments isn't UTF-8. so don't need to convert it.
5673         if GTK+ handle UTF-8, also don't need to convert it.
5674         (strend): remove.
5675         (bracketted_to_string): fixed transaction for UTF-8 support.
5676         also start/end bracket is not necessarily 1 character. so that when use
5677         strend(), it doesn't work correctly.
5678         (string_to_stereotype): use utfchar instead of char.
5679         (remove_stereotype_from_string): ditto.
5680         (stereotype_to_string): ditto.
5682         * objects/UML/stereotype.h: ditto.
5684         * objects/UML/message.c: use utfchar instead of char for structure.
5685         (MESSAGE_CREATE_LABEL, MESSAGE_DESTROY_LABEL): remove.
5687         * objects/UML/small_package.c: use utfchar instead of char for structure.
5689         * objects/UML/realizes.c: ditto.
5691         * objects/UML/object.c: ditto.
5693         * objects/UML/large_package.c: ditto.
5695         * objects/UML/implements.c: ditto.
5697         * objects/UML/generalization.c: ditto.
5699         * objects/UML/dependency.c: ditto.
5701         * objects/UML/constraint.c: ditto.
5703         * objects/UML/component.c: ditto.
5705         * objects/UML/class_dialog.c (attributes_get_current_values):
5706         (attributes_list_new_callback, attributes_fill_in_dialog):
5707         (parameters_set_values, parameters_get_values):
5708         (parameters_get_current_values, parameters_list_new_callback):
5709         (operations_set_values, operations_get_values):
5710         (operations_get_current_values, operations_list_new_callback):
5711         (operations_fill_in_dialog, templates_set_values):
5712         (templates_get_values, templates_get_current_values):
5713         (templates_list_new_callback, templates_fill_in_dialog):
5714         fixed transaction for UTF-8 support.
5716 2002-01-27  Akira TAGOH  <tagoh@redhat.com>
5718         * objects/UML/message.c (message_draw): fixed transaction for UTF-8 support.
5720         * objects/UML/class_dialog.c (class_read_from_dialog):
5721         (class_fill_in_dialog):
5722         (attributes_get_values): ditto.
5724         * objects/UML/actor.c (actor_create): ditto.
5726         * objects/UML/class.c (umlclass_calculate_data): ditto.
5728         * objects/UML/association.c (association_apply_properties):
5729         (fill_in_dialog): ditto.
5731         * objects/UML/uml.c (uml_get_attribute_string):
5732         (uml_get_operation_string):
5733         (uml_get_parameter_string):
5734         (uml_get_formalparameter_string): use utfchar instead of char.
5736         * objects/UML/uml.h: gettextize UML_STEREOTYPE_START and
5737         UML_STEREOTYPE_END.
5739         * objects/UML/class.h: use utfchar instead of char.
5741         * lib/dia_xml.c (data_add_string): ditto.
5743         * lib/text.c (text_insert_char): fixed characters# calculation
5744         when includes multibytes character in strings.
5746 2002-01-26  Steffen Macke  <sdteffen@yahoo.com>
5748         Patch from Richard Rowell <rwrowell@bellsouth.net>:
5750         * app/lineprops_area.c:
5751         * lib/arrows.h:
5752         * lib/arrows.c: 
5753         * lib/widgets.c: added crow foot arrow and cross arrow
5754         
5755         Patch from Frank Gevaerts <frank.gevaerts@fks.be>:
5756         
5757         * plug-ins/svg/render_svg.c: fixed arcs, fill and text alignment
5759 2002-01-26  Cyrille Chepelov  <cyrille@chepelov.org>
5761         * po/update.pl (REMOVED):
5762         * po/update.sh (REMOVED):
5763         * xml-i18n-merge.in.kg (REMOVED):
5764         * xml-i18n-update.in.kg (REMOVED):
5765         * sheets/Makefile.am:
5766         * Makefile.am:
5767         * autogen.sh:
5768         * configure.in: converted from xml-i18n-tools to intltools
5770         This looks like it fixes the build bugs of the snapshot tarballs, 
5771         and it supersedes #69611.       
5773 2002-01-25  Akira TAGOH  <tagoh@redhat.com>
5775         * lib/text.c (text_insert_char): fixed characters# calculation.
5776         it's not string length.
5778         * lib/plug-ins.c (dia_plugin_info_init): when GTK_DOESNT_TALK_UTF8_WE_DO
5779         is defined, needs to convert a description to UTF-8.
5781         * app/render_gdk.c (get_text_width): fixed transaction for
5782         UTF-8 support. also should uses gdk_text_width_wc() instead
5783         of gdk_text_width().
5785         * app/render_gdk.c (draw_string): when GTK_DOESNT_TALK_UTF8_WE_DO
5786         is defined, needs to convert to locale encoding for display.
5787         Also use utfchar instead of char for argument.
5789 2002-01-24  Hans Breuer  <hans@breuer.org>
5791         * app/commands.c(edit_paste_callback and more) : 
5792         call diagram_modified(ddisp->diagram) to fix #68083
5793         (help_menu_callback) : plug a DIR leak
5795         * app/disp_callbacks.c(ddisplay_canvas_events) : handle 
5796         GTK_TALKS_UTF8_WE_DONT
5798         * app/render_gdk.c(get_text_with) : it's a bad idea to use
5799         gdk_string_with() when GTK_TALKS_UTF8_WE_DONT instead of
5800         gdk_text_width(). The length value is still questionable ...
5802         * lib/charconv.c : use functions already available in early
5803         GLIB-1.3 days whiches API hasn't changed since, to avoid
5804         version problems with the win32 build
5806         * lib/font.c : finally fix #58045 and #68208
5808         * lib/dia_xml.c (xmlDiaSaveFile) : gzdopen in binary mode
5810 2002-01-24  Akira TAGOH  <tagoh@redhat.com>
5812         * app/disp_callbacks.c (ddisplay_canvas_events): when event returned
5813         no strings, fixed transaction.
5815         * lib/charconv.h: fixed typo.
5817         * app/menus.c: fixed typo.
5819         * lib/charconv.c (charconv_utf8_strchr): remove. use uni_strchr instead.
5821         * objects/UML/object.c: attrib's type uses utfchar instead of char.
5823         * app/disp_callbacks.c (ddisplay_canvas_events): forget g_free()
5825         * lib/text.c (text_create_change): use unichar instead of char.
5827         * lib/text.c (data_add_text, data_text, apply_textstr_properties):
5828         use utfchar instead of char.
5830         * lib/text.c (text_insert_char, text_key_event): fixed transaction for
5831         UTF-8 support.
5833         * lib/charconv.c (charconv_utf8_get_char): add new function.
5835 2002-01-23  Akira TAGOH  <tagoh@redhat.com>
5837         * lib/text.c (text_delete_forward, text_delete_backward,
5838         text_split_line): fixed transaction for UTF-8 support.
5840         * lib/text.c (text_copy): when UNICODE_WORK_IN_PROGRESS is defined,
5841         strlen[] has string length for UTF-8, so has to use alloclen[].
5843         * dia.pot: remove.
5845         * .cvsignore: add dia.pot.
5847 2002-01-24  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>
5849         * configure.in: Added "sk" to ALL_LINGUAS.
5851 2002-01-22  Akira TAGOH  <tagoh@redhat.com>
5853         * lib/text.c (text_set_string, new_text, text_copy,
5854         text_get_string_copy, text_join_lines): use utfchar instead of gchar
5855         for strings.
5857         * lib/text.c (set_string): use charconv_utf8_strchr() instead of
5858         strchr().
5860         * lib/charconv.c (charconv_utf8_strchr): add new function.
5862         * lib/charconv.c (charconv_keyval_to_unicode): ditto.
5864         * lib/charconv.c (charconv_utf8_from_gtk_event_key): ditto.
5866         * app/disp_callbacks.c (ddisplay_canvas_events): needs to convert
5867         strings to the appropriate encoding.
5869 2002-01-22  Lars Clausen  <lrclause@cs.uiuc.edu>
5871         * app/object_ops.c (object_list_align_[hv]): Leak fix.
5873         * lib/Makefile.am (INCLUDES): Added debug flags.
5875         * app/object_ops.c: Fixed ordering problem of align equi-distant &
5876         adjacent. 
5878 2002-01-21  Akira TAGOH  <tagoh@redhat.com>
5880         * lib/font.c (font_string_width): use gdk_text_width_wc() instead of
5881         gdk_string_width().
5883         * objects/GRAFCET/boolequation.c: fixed invalid comment.
5885         * objects/UML/stereotype.c (string_to_bracketted): fixed build problem
5886         when defined UNICODE_WORK_IN_PROGRESS.
5888         * lib/dia_xml.c (data_add_string): fixed typo.
5890 2002-01-20  Akira TAGOH  <tagoh@redhat.com>
5892         * configure.in: fixed test gtk_advancement.
5894 2002-01-019  Steffen Macke  <sdteffen@yahoo.com>
5896         * plug-ins/svg/render_svg.c: fix for #69053, alignment of text
5897         exported to SVG
5899         Patch from M.C. Nelson <mcn@mani.kobayashimaru.org>: 
5901         * app/recent_files.[ch]: reworked to support GNOME, accelerators,
5902         tool tips, preferences, and arbitrarily long ~/.dia/history
5904         * app/menus.c: made 'Plugins' consistantly spelled and accelerated;
5905         removed 'Open Recent'; added new separators for recent documents on
5906         File menu.
5908         * app/interface.[ch] (interface_get_toolbox_shell): new function
5910         * app/diagram.c: added new parameter to recent_file_history_add() call
5912         * app/preferences.[ch]: added new 'Recent documents list size'
5913         preferences item
5914         
5915 2002-01-18  Akira TAGOH  <tagoh@redhat.com>
5917         * lib/font.c (font_get_gdkfont_helper): use gdk_fontset_load ().
5918         if it failed, should be used gdk_font_load ().
5920         * lib/font.c (font_data): added the font entries for CJK.
5922 2002-01-17  Steffen Macke  <sdteffen@yahoo.com>
5924         Patch from M.C. Nelson <mcn@mani.kobayashimaru.org>:
5926         * app/menus.c: replaced GDK_F1 with "F1" to fix segfault on startup
5927         
5928 2002-01-04  Cyrille Chepelov  <cyrille@chepelov.org>
5930         Patch from Martin Cracauer <cracauer@cons.org>:
5931         
5932         * app/menus.c: add missing #include <gdk/gdkkeysyms.h> (useful in the
5933         non-GNOME case ?)
5935 2002-01-01  Hans Breuer  <hans@breuer.org>
5937         * app/command.c : optional use GDI printing on windoze
5939         * app/preferences.[hc] : add option 'prefer_psprint' to 
5940         select the print engine to use (could be used for Dia/Gnome
5941         as well)
5943         * app/paginate_gdiprint.(h|cpp) : new files, which interlink the
5944         wmf plug-in with the common win32 print api. Now printing
5945         should work almost as expected from a windows program :-)
5947         * app/diagram.c app/menus.[hc] : rename _UpdatableMenuItems.delete
5948         to .edit_delete to avoid clashes with C++
5950         * app/makefile.msc : updated for GDI printing
5952         * plug-ins/wmf/wmf.cpp : some small modifications to support
5953         GDI printing. Also swap R and B channel in draw_image()
5955         * app/makefile.am : added windows only files to EXTRA_DIST
5957         * objects/uml/class.c(umlclass_set_props) : force recalculation
5958         when applying properties
5960         * lib/charconv.c lib/dia_xml.c : temporary back-ported to
5961         glib-1.3.2 (for win32) IMHO causes recent cvs introduces too
5962         many incompatible changes (and would force a gtk update)
5964         * objects/makefile.msc : don't build C-Objects which are
5965         already available as 'pure shape'
5967         * plug-ins/makefile.msc : remove diaimport from build. It was
5968         only available via mailing-list and is broken since the
5969         StdProp overhaul.
5972         Patch from Jose A Ortega Ruiz  <jaortega@acm.org>
5974         * app/preferences.[hc] : tweaked preferences.c to make 
5975         PREF_STRING work. Use it for 'diagram_tree_hidden'. Also
5976         added some more DiagramTree prefererences and their own
5977         notebook page.
5979         * app/diagram_tree.[hc] : allow to sort by object type or name
5980         and hide by type ...
5981         * app/diagram_tree_menu.[hc] : ... add respective menu entries ...
5982         * app/diagram_tree_menu_callbacks.[hc] : ... and callbacks.
5984         * app/diagram_tree_window.c : handle hidden types and window
5985         size restoring.
5987 2001-12-20  Hans Breuer  <hans@breuer.org>
5989         * plug-ins/python/Makefile.am : patch from Peter Moulder 
5990         <pmoulder@csse.monash.edu.au> to make the python plug-in
5991         compile on *nix too.
5993 2001-12-03  Cyrille Chepelov  <chepelov@calixo.net>
5995         Patch from Alan <horkana@tcd.ie>:
5997         * app/menus.c: bind the F1 shortcut to the Help/_Manual function.
5999 2001-11-20  Hans Breuer  <hans@breuer.org>
6001         * app/makefile.msc : add new diagram_tree_menu(_callbacks).obj
6003 2001-11-18  Jose A Ortega Ruiz  <jaortega@acm.org>
6005         * app/diagram_tree.[hc] : Added new functions and types for
6006         sorting diagram and objects, and attaching the popup menus.
6008         * app/preferences.h: Added more diagram tree preferences, using a
6009         DiagramTreeConfig struct in DiaPreferences. The new prefs are the
6010         height and width of the diagram tree window and the default sort
6011         orders for diagrams and objects.
6013         * app/preferences.c (prefs_data): Added new entries for the new
6014         diagram tree preferences.
6016         * app/preferences.c (prefs_tabs): New tab for diagram tree
6017         preferences.
6019         * app/diagram_tree_window.[hc] (create_diagram_tree_window): 
6020         * app/diagram_tree_window.c (diagram_tree_window_new): 
6021         * app/interface.c (create_tree_window): The diagram tree window is
6022         initialised using the DiagramTreeConfig part of prefs.
6025 2001-11-14  Jose A Ortega Ruiz  <jaortega@acm.org>
6027         * app/diagram_tree_menu.[hc]: New files. Functions to create the
6028         diagram tree popup menus.
6030         * app/diagram_tree_menu_callbacks.[hc]: New files. Callbacks for
6031         the diagram tree popup menus.
6033         * app/Makefile.am (dia_core_files): diagram_tree_menu* files
6034         added.
6036 2001-11-13  Jose A Ortega Ruiz  <jaortega@acm.org>
6038         * app/diagram_tree.c (double_click_callback, diagram_tree_new):
6039         double-clicking a diagram tree node raises the diagram window
6040         to the foreground (and, if a object node was clicked, selects the
6041         object in the diagram).
6043         * app/diagram_tree.c (select_tree_widget): selecting an object
6044         node with single click simply updates it (no raise).
6046 2001-11-08  Jose A Ortega Ruiz  <jaortega@acm.org>
6047         These changes make the diagram tree lazy: it is not created unless
6048         the diagram tree window is requested.
6049         
6050         * app/diagram_tree_window.[hc] (create_diagram_tree_window): new
6051         function for creating the tree window.
6053         * app/interface.c (create_tree_window): call
6054         create_diagram_tree_window() instead of diagram_window().
6056         * app/diagram_tree.c (diagram_tree_add, diagram_tree_remove) 
6057         (diagram_tree_update, diagram_tree_update_name) 
6058         (diagram_tree_add_object, diagram_tree_add_objects) 
6059         (diagram_tree_remove_object, diagram_tree_remove_objects) 
6060         (diagram_tree_update_object): accept a NULL tree as a nominal
6061         argument (and do nothing in this case!), so that the diagram tree
6062         is not initialised if not used.
6064         * app/diagram_tree_window.c (diagram_tree): do not create the
6065         diagram tree until diagram_window() or diagtree_show_callback()
6066         are invoked.
6068 2001-10-31  Jose A Ortega Ruiz  <jaortega@acm.org>
6069         [slightly modified and applied from Hans Breuer <hans@breuer.org>]
6071         * app/diagram_tree_window.[hc] : (new files) implementation of 
6072         the diagram tree window, a container for a diagram tree. [Removed
6073         the horizontal scroll bar glitch by disableing it]
6075         * app/diagram_tree.[hc] : (new files) implementation of the 
6076         diagram tree widget. [Don't rely on the layers GPtrArray to be
6077         NULL terminated, but use its ->len field] 
6079         * app/Makefile.am (dia_core_files): added new files
6080         diagram_tree.[hc] and diagram_tree_window.[hc]
6082         * app/interface.[hc] : (create_tree_window): this function 
6083         creates the new diagram tree window widget
6085         * app/undo.c (delete_objects_apply) (delete_objects_revert) 
6086         (insert_objects_apply) (insert_objects_revert) (group_objects_apply) 
6087         (ungroup_objects_apply) (ungroup_objects_revert): 
6088         every time that an undoable command modifies a diagram 
6089         adding/removing/(un)grouping objects, a diagram_tree_something() is 
6090         invoked to keep the diagram tree window in sync
6092         * app/properties.c (properties_apply): call to
6093         diagram_object_modified(), which updates the diagram tree window
6094         when the properties of an object are modified
6096         * app/preferences.[hc] : new "show_diagram_tree" configuration option 
6097         (whether the diagram tree window should be shown on dia startup)
6099         * app/menus.c : added '<Toolbox>/File/Diagram Tree' entry
6101         * app/diagram.h (diagram_object_modified): callback notifying of a
6102         diagram object modification
6104         * app/diagram.c (diagram_load_into): added call to
6105         diagram_tree_add() to add newly loaded diagrams to the diagram
6106         tree window
6107         (diagram_destroy): call to diagram_tree_remove() to remove a
6108         destroyed diagram from the diagram tree window
6109         (diagram_add_object): call to diagram_tree_add_object() to add an
6110         object to the diagram tree window
6111         (diagram_add_object_list): as above, but with an object list
6112         (diagram_selected_break_external): deletion of objects from the
6113         diagram is detected here, and diagram_tree_remove_object() is
6114         invoked to remove the object from the diagram tree window (it
6115         would be nice to have a diagram_remove_object() in the Diagram
6116         interface)
6117         (diagram_set_filename): update the diagram tree window when a
6118         diagram's filename changes
6120         * app/commands.c (file_new_callback): added call to
6121         diagram_tree_add() to add newly created diagrams to the diagram
6122         tree window
6124         * app/app_procs.c (app_init): added call to create_tree_window()
6126         * app/makefile.msc : updated
6128 2001-10-28  Hans Breuer  <hans@breuer.org>
6130         * app/preferences.h (DiaPreferences): 
6131         * app/preferences.c (prefs_data): new "show_diagram_tree"
6132         configuration option (whether the diagram tree window should be
6133         shown on dia startup)
6135         * app/menus.c: added the new "<Toolbox>/View/Diagram tree" menu
6136         entry (both for GNOME and gtk)
6138         * app/diagram.h (diagram_object_modified): callback notifying of a
6139         diagram object modification
6141         * app/diagram.c (diagram_load_into): added call to
6142         diagram_tree_add() to add newly loaded diagrams to the diagram
6143         tree window
6144         (diagram_destroy): call to diagram_tree_remove() to remove a
6145         destroyed diagram from the diagram tree window
6146         (diagram_add_object): call to diagram_tree_add_object() to add an
6147         object to the diagram tree window
6148         (diagram_add_object_list): as above, but with an object list
6149         (diagram_selected_break_external): deletion of objects from the
6150         diagram is detected here, and diagram_tree_remove_object() is
6151         invoked to remove the object from the diagram tree window (it
6152         would be nice to have a diagram_remove_object() in the Diagram
6153         interface)
6154         (diagram_set_filename): update the diagram tree window when a
6155         diagram's filename changes
6157         * app/commands.c (file_new_callback): added call to
6158         diagram_tree_add() to add newly created diagrams to the diagram
6159         tree window
6161         * app/app_procs.c (app_init): added call to create_tree_window()
6163 2001-10-28  Hans Breuer  <hans@breuer.org>
6165         * plug-ins/python/pydia-property.c : apparently I missed
6166         to commit this last time. Now it has some more SetAttr
6167         support (apply from property)
6169         * plug-ins/python/pydia-properties.h : added PyDiaProperty_Check
6171         * plug-ins/python/pydia-text.[ch] : new files
6173 2001-10-14  Hans Breuer  <hans@breuer.org>
6175         * lib/charconv.c : g_locale_to_utf8() does not handle NULL
6176         strings. Use g_strdup() for these.
6178         libxml2 does not produce 'any extra indentation when saving a tree'
6179         [libxml2-2.4.2/doc/upgrade.html] anymore, which was the default with
6180         libxml(1). To get human readable XML some extra tweaking is required.
6181         It is enabled by setting 'pretty_formated_xml' to 'true' in 'diarc'.
6182         * lib/dia_xml.[hc] : provide and use 'DIAVAR pretty_formated_xml'
6183         * app/preferences.[ch] : initialize 'pretty_formated_xml'
6185         * lib/libdia.def : updated externals
6187         * lib/properties.h : add prototype for prop_list_from_single ()
6189         * plug-ins/makefile.msc : build metapost plug-in
6191         * plug-ins/metapost/render_metapost.c : msvc does not like
6192         switch labels without operation 'default: }'. Added a noop.
6194         * plug-ins/python/pydia-text.[hc] : (new files) wrap DiaText
6195         * plug-ins/python/diamodule.c : added PyDiaText 
6196         * plug-ins/python/makefile.msc : dito. Also added LIBXML_CFLAGS.
6197         Although the python plug-in does not use libxml at all, the
6198         headers are required to use the lib/prop*.h headers
6200         * plug-ins/python/pydia-diagramdata.c : added wrappers for
6201         update_extents and get_sorted_selected (should I duplicate
6202         more functions from PyDiaDiagram or should they be moved?)
6204         * plug-ins/python/pydia-properties.c : allow to set (some) properties
6205         through the dictionary api
6206         * plug-ins/python/pydia-property.h : declare PyDiaProperty_ApplyToObject
6207         * plug-ins/python/pydia-property.c : implement it (currently only
6208         string properties can be set)
6210         Reimplement PyDiaProperty_GetAttr by means of the new StdProp api.
6211         Quoting myself: 'Still not convinced that this is better than an 
6212          integral property->type and some casting ...
6213          It is trading a straightforward 40 lines switch statement to
6214          this nice 'type safe' function mapping (about 125 lines)'
6215         (But now it works again, better than changing the News file :)
6216         
6217 2001-10-14  Cyrille Chepelov  <chepelov@calixo.net>
6219         patch from <robert.young@dsto.defence.gov.au>: 
6220         * objects/UML/component.c: remember to set font in UML component
6221         object (fixes #62132)   
6223 2001-10-02  Lars Clausen  <lrclause@cs.uiuc.edu>
6225         * plug-ins/metapost/metapost.c: 
6226         * plug-ins/metapost/Makefile.am:
6227         * plug-ins/metapost/render_metapost.c:
6228         * plug-ins/metapost/render_metapost.h:
6229         Metapost renderer from Chris Sperandio
6231 2001-09-14  Hans Breuer  <hans@breuer.org>
6233         * app/render_gdk.c : reflect the fact, that GTK already talks
6234         UTF8 on win32, fixes #59982, #56100, (#55992 ?) ...
6236         * lib/font.c : 
6237         * app/render_libart.c : trying to fix #58045 but it appears
6238         to be an Gdk/win32, too. 
6240         * lib/charconv.c : handle utf8 conversion with the help of
6241         glib-1.3 even in the !HAVE_UNICODE case.
6243         * lib/dia_xml.c : reduce complaing about missing encoding, by
6244         detecting if the default (utf8) would break the file.
6246 2001-09-13  Cyrille Chepelov  <chepelov@calixo.net>
6248         * lib/charconv.c: (get_local_charset): at least please try to not 
6249         silently change the logic, while avoiding crashes. 
6251         * lib/font.c: (suck_font): put a #error, we have a nasty something
6252         to fix there before we switch to Gtk 2.0.
6253         
6254 2001-09-09  Hans Breuer  <hans@breuer.org>
6256         * **/makefile.mingw : Approach to compile Dia with mingw.
6257         Compiling mostly works but running does not (yet) ... 
6259         * lib/geometry.h : 
6260         - use G_OS_WIN32 instead of _MSC_VER to drag in isinf, etc. definitions. 
6261           Apparently mingw needs it too.
6262         - enable 'normalization' of a null verctor. Otherwise the beziergon
6263           bounding box calculation would be broken at least with msvc. What's
6264           the mathematical correct result of 0.0/0.0 ?
6266         * lib/dia_xml.c : isinf() for mingw too.
6268         * lib/dia_dirs.c : use MAX_PATH instead of _MAX_PATH (works for mingw 
6269         and msvc)
6271         * lib/charconv.c : still crashes if strcmp(NULL, "UTF-8"). 
6272         Please don't do it.
6274         * lib/font.c : Trying to reflect that GTK_TALKS_UTF8_WE_DONT
6276         * lib/libdia.def : updated externals. Apparently mingw needs
6277         them to produce the right mangling.
6279         * plug-ins/shape/shape-exports.c : get prototypes for xmlStrdup
6280         and xmlDiaSaveFile
6282 2001-09-08  Wang Jian  <lark@linux.net.cn>
6284         * configure.in(ALL_LINGUAS): Renamed zh_CN.GB2312 to zh_CN
6286 2001-09-07  Cyrille Chepelov  <chepelov@calixo.net>
6288         * lib/dia_xml_libxml.h:
6289         * lib/dia_xml.c: (data_add_string), (xmlDiaSaveFile): Duplicated
6290         libxml1's code, to rework the output file before it gets committed
6291         to disk. This is rubbish, and will be removed when libxml2
6292         switches from discouraged to mandatory. 
6293         All in all, this fixes #60152. 
6294         
6295         * lib/charconv.h: 
6296         * lib/charconv.c: (charconv_unichar_to_utf8):
6297         made the type of the input parameter explicitly an unsigned long.
6299         * configure.in: Added a check for libz (we must now include it
6300         explicitly, for xmlDiaSaveFile).
6301         
6302         * app/load_save.c: (diagram_data_save):
6303         * lib/plug-ins.c: (ensure_pluginrc), (info_fill_from_pluginrc),
6304         (dia_pluginrc_write):
6305         * plug-ins/shape/shape-export.c: (new_shape_renderer),
6306         (end_render), (draw_string):
6307         * plug-ins/svg/render_svg.c: (new_svg_renderer), (end_render),
6308         (draw_string):
6310         Made sure we always write UTF-8 XML files, and through
6311         xmlDiaSaveFile().
6313         * NEWS: documented that fact.
6314         
6315 2001-09-07  James Henstridge  <james@daa.com.au>
6317         * configure.in (found_libxml): refactor the check for libxml a
6318         little so that it handles finding both libxml1 and 2 better.
6320 2001-09-03  Cyrille Chepelov  <chepelov@calixo.net>
6322         * app/app_procs.c: removed a spurious } which caused a compilation
6323         error in the (!HAVE_GNOME && HAVE_POPT_H) case
6325         * lib/charconv.c: (get_local_charset): some versions of iconv(1)
6326         don't know what ANSI X3.4-1968 is. I didn't know until this day,
6327         but it's just plain old ASCII. Added a check to shield the poor
6328         XML library.
6330         Patches from <robert.young@dsto.defence.gov.au>:
6332         * lib/text.c: (text_calc_boundingbox) Bounding box now calculates the
6333         width and height of text before calculating bounds. Fixes #59928
6335         * app/preferences.c: Moved grid related items into Grid Tab.
6336         
6337 2001-09-02  Cyrille Chepelov  <chepelov@calixo.net>
6339         * app/interface.c: (create_zoom_widget): connected one more signal
6340         to the Zoom selector combo's list. Fixes #59879.
6342         * app/app_procs.[ch]: (app_init) (do_convert)
6343         (build_output_file_name): brought back into the main executable
6344         the rare useful bits of the ill-fated diaconv. This means we have
6345         one new feature : --export-to-format (-t), which should make
6346         writing conversion scripts easier, and a crude implementation of
6347         -t and -e for the poptless argument parsing, which means the Win32
6348         port should be able to take advantage of it (that should make
6349         resolving #58197 possible).
6351         * app/diaconv.c: kept the poor duck compiling (but that's about
6352         it).
6354         * plug-ins/svg/render_svg.c: updated the SVG DTD header (I hope
6355         I've got it right).
6357         * NEWS: updated about the new feature above, and documented the 
6358         "missing encoding specification" complaint. 
6359         
6360 2001-09-01  Abel Cheung  <maddog@linux.org.hk>
6362         * configure.in: Rename zh_TW.Big5 -> zh_TW in ALL_LINGUAS.
6364 2001-09-01  Cyrille Chepelov  <chepelov@calixo.net>
6366         * objects/standard/bezier.c: used g_new0 instead of g_new, to take
6367         care of #59837.
6369 2001-09-01  James Henstridge  <james@daa.com.au>
6371         * */Makefile.am: various changes to include missing files, and fix
6372         sheets dir to handle building with builddir != srcdir.
6374         * autogen.sh: unconditionally pass the --enable-maintainer-mode
6375         and --enable-db2html flags so that builds from CVS work correctly.
6377         * configure.in: increment version number.  Also add an
6378         --enable-db2html flag.  Without the flag, db2html won't be run (if
6379         the flag is passed and db2html is not present, do nothing).
6381 2001-08-30  Cyrille Chepelov  <chepelov@calixo.net>
6383         * lib/poly_conn.c: (polyconn_copy): it's a wonder this routine
6384         even compiled. It's really too bad there is no lint tool easily
6385         available (or a more cautious, pedandic, paranoid and verbose
6386         compiler). Anyway, this fixes #59662. (this didn't affect 0.88.x)
6388 2001-08-27  Cyrille Chepelov  <chepelov@calixo.net>
6390         * app/load_save.c:
6391         * dia/lib/plug-ins.c: use g_strdup() instead of strdup(). Patch
6392         from <robert.young@dsto.defence.gov.au>. Fixes #59591.
6394         * app/menu.c: added ellipsis(...) to diagram properties menu item.
6395         * app/dia-props.c: diagram properties dialog contents did not
6396         represent current diagram settings.
6397         * app/dia-props.[ch]:
6398         * app/display.c: diagram properties contents now follows currently
6399         selected diagram.
6400         Patch also from <robert.young@dsto.defence.gov.au>, fixes #59409.
6402         * AUTHORS: added Robert Young.
6403         
6404 2001-08-27  Cyrille Chepelov  <chepelov@calixo.net>
6406         * app/modify_tool.c: (modify_button_release): Patch from
6407         <robert.young@dsto.defence.gov.au>. Fixes the remaining bit from
6408         #59090: if selection dragging was released outside of the window, 
6409         artifacts of the selection box remained.
6411 2001-08-25  Cyrille Chepelov  <chepelov@calixo.net>
6413         * Objects/custom/shape_info.c: added missing #include <xmlmemory.h>
6415 2001-08-19  Cyrille Chepelov  <chepelov@calixo.net>
6417         * configure.in:
6418         * sheets/Makefile.am: prepared the terrain for the Version of
6419         xml-i18n-tools Which Comes After 0.9 (and which will feature at
6420         last a sane behaviour with XML files). Some reasonible delay
6421         before enforcing that version *will* be given.
6423         * xml-i18n-merge.in.kg: included the current CVS xml-i18n-merge.in
6424         
6425         * lib/plug-ins.c: <xmlmemory.h> defines xmlFree(), otherwise it
6426         becomes a nonexistent symbol.
6427         
6428 2001-08-18  Hans Breuer  <hans@breuer.org>
6430         * app/app_procs.c : made it compile without ENABLE_NLS
6432         * app/diap_callbacks.c : strcmp isn't guaranteed to work
6433         with NULL pointers
6435         * app/load_save.c :
6436         * lib/plug-ins.c : 
6437         * objects/custom/shape_info.c : avoid mixing allocators and dealocators. 
6438         It has to be :
6439                 xmlGetProp, ... -> xmlFree
6440                 malloc, strdup -> free
6441                 g_new, g_malloc, g_strdup - > g_free
6443         * app/win32print.c : some more error checking, still not
6444         working on Win9x
6446         * lib/charconv.c : get_local_charset is used even with !HAVE_UNICODE
6448         * lib/dia_xml.c : msvc still has no unistd.h
6450         * lib/dia_xml.c :
6451         * lib/sheets.c : temporary resolved libxml include brokeness
6453         * plug-ins/python/pydia-*.c : reflect Font and StdProp api
6454         changes. Compiles again, but doesn't do anything useful anymore.
6455         (see THE_PROP_TYPE_IS_INTEGRAL)
6457         * **/makefile.msc : updated to use LIBXML2
6459         * lib/libdia.def : reflect api changes
6461 2001-08-17  Cyrille Chepelov  <chepelov@calixo.net>
6463         * config.h.win32: added defines telling that gtk speaks UTF8.
6464         Hans, I believe this reflects what GTK on Win32 does.
6466         * app/app_procs.c: if GTK talks UTF8, we'll feed it UTF8 localised
6467         strings.        
6468         * lib/prop_inttypes.c: 
6469         * lib/prop_text.c:
6470         * lib/prop_widgets.c: fixed typos in the GTK_TALKS_UTF8_WE_DONT
6471         code path.
6472         
6473         * lib/plug-ins.c: (dia_register_plugins_in_dir): If there is a
6474         trailing // (or whatever (G_DIR_SEPARATOR * 2) is), a recursive
6475         search for plug-ins is done.
6476         * app/Makefile.am: made app/run_dia.sh use the // capability. No
6477         need to update this anymore if we get a new plug-in library (or
6478         remove one).
6480         * lib/dia_xml.c: #include <unistd.h> was missing.
6481         
6482         * lib/properties.h: 
6483         * lib/proplist.c: (pdtpp_defaults): Added a new flag,
6484         PROP_FLAG_NO_DEFAULTS. Will be used in the "automatic defaults"
6485         support.        
6487 2001-08-16  Cyrille Chepelov  <chepelov@calixo.net>
6489         * sheets/civil.sheet: removed duplicate "Danish" entries.
6491         * autogen.sh:
6492         * configure.in: 
6493         * .cvsignore:
6494         * sheets/Makefile.am: 
6495         * po/POTFILES.in:
6496         * Makefile.am: applied the xml-i18n-tools README's instructions.
6498         * po/(da de fr hu nl nn no sl).po: merged the translations from
6499         the sheet files into the .po files. I hope I haven't mixed
6500         languages...
6501         * sheets/*.sheet (REMOVED):
6502         * sheets/*.sheet.in (NEW): moved the sheet files sans
6503         translations into .sheet.in files. 
6504         
6505         * sheets/xml-i18n-unicodify: (NEW) included from xml-i18n-tools,
6506         because we don't yet want to force all translators to work using
6507         UTF-8 editors. We'll want to do that sometime (sooner rather than
6508         later). Okay, I sing a slightly different tune in po/ChangeLog...
6510         * dia.desktop (REMOVED):
6511         * dia.desktop.in (NEW): used also the x18t infrastructure for
6512         this too.
6514         * xml-i18n-update.in.kg (NEW): This one will stay in CVS until an
6515         "official" version of x18t with support for .sheet files is available.
6516         * xml-i18n-merge.in.kg (NEW): This one will stay in CVS until an
6517         "official" version of x18t which doesn't corrupt UTF-8 data in XML
6518         is available.
6519         
6520         ** yes, we are now using xml-i18n-tools to manage the sheet
6521         translations. For the Win32 build, Nemo stores snapshots of
6522         translated strings next to the CVS snapshots. **
6524         * sheets/checktrans.py: suddenly, some sheets have lots of
6525         translations (objects which existed before sheets, mostly).
6526         Adapted the formatting.
6528         * po/README (REMOVED): this is obsolete ! It was ignored, anyway.
6530         * app/display.[ch]: (ddisplay_autoscroll), (ddisplay_scroll):
6531         * app/modify_tool.[ch]: (modify_motion): A (modified) patch from
6532         <robert.young@dsto.defence.gov.au>, to fix #59090.
6534         * app/display.c: (ddisplay_scroll): While at it, added some
6535         margin, so that autoscrolling can happen within a margin outside
6536         the diagram's extents.
6538         * app/tool.[ch]: 
6539         * app/interface.c:
6540         * app/disp_callbacks.c: Robert "forced" me to go when I usually
6541         don't, namely the app/ directory. So while I was there, I
6542         scratched a long-time itch. If no object has focus, pressing the
6543         space bar will select back the tool which was selected before the 
6544         current one (I find this especially useful with "reset after create" !)
6545         
6546         * lib/proplist.c: (prop_list_from_single): Renamed
6547         prop_list_singleton() to avoid confusion with the Singleton
6548         pattern (which it definitely is not).
6549         
6550         * lib/propobject.c: (object_prop_by_name_type),
6551         (object_prop_by_name): The "flags" parameter was not necessary.
6552         These don't return synthetic properties, but properties built from
6553         a real property description list; therefore, we don't call
6554         make_new_prop() but use the existing property descriptor, which
6555         has perfectly valid (and meaningful) flags.
6557         * lib/proplist.c: (pdtpp_synthetic), (pdtpp_from_object): These
6558         new predicates better reflect the reason why properties exist when
6559         they're created by make_new_prop() or object_prop_by_name().    
6561         * lib/propobject.c: (object_prop_by_name_type), (object_prop_by_name):
6562         * lib/prop_basic.c: (make_new_prop): used the new reasons instead
6563         of pdtpp_true().
6565         * lib/properties.h: reflects all the above changes.
6567         * objects/SADT/arrow.c:
6568         * objects/SADT/annotation.c:
6569         * sheets/SADT.sheet: minor renamings to better match FIPS 183's
6570         IDEF0 terminology.
6571         
6572 2001-08-15  Cyrille Chepelov  <chepelov@calixo.net>
6574         * lib/properties.h:
6575         * lib/proplist.c: (prop_list_singleton):
6576         * lib/propobject.c: (object_prop_by_name_type), (object_prop_by_name):
6577         Added these, to simplify interactions of plug-ins with the StdProp
6578         core.
6580         * lib/Makefile.am:
6581         * lib/dia_xml.h:
6582         * lib/dia_xml_libxml.h (NEW): 
6583         * app/load_save.c:
6584         * lib/dia_xml.c:
6585         * lib/plug-ins.c:
6586         * lib/sheet.c:
6587         * objects/custom/shape_info.c: A few prototypes were causing
6588         #include hell, because we generally attempt to not pull the whole
6589         libxml header set when we include dia_xml.h. Moved those
6590         prototypes away for the rare cases they're necessary.
6591         
6592 2001-08-15  Hans Breuer  <hans@breuer.org>
6594         * lib/font.c : made LARS_TRACE_MESSAGES Standard C conform
6596         * lib/libdia.def : 
6597         * lib/makefile.msc : updated
6599         * lib/prop_basic.c : __FUNCTION__ is a gcc extension. Please
6600         use G_GNUC_FUNCTION instead.
6602         * lib/prop_inttypes.c : include <stdlib.h> for strtol()
6604         * objects/sadt/annotation.c : disable TEMPORARY_EVENT_TEST for
6605         msvc instead of cleaning missing includes
6607         * plug-ins/wmf/wmf.cpp :
6608         * plug-ins/wmf/wmf_gdi.h : fixed for Font to DiaFont renaming
6610 2001-08-15  Cyrille Chepelov <chepelov@calixo.net>
6612         * app/app_procs.c:
6613         * app/load_save.c:
6614         * lib/dia_xml.c:
6615         * lib/plug-ins.c:
6616         * lib/sheet.c:
6617         * objects/custom/shape_info.c:
6618         * plug-ins/shape/shape-export.c:
6619         * plug-ins/svg/render_svg.c: used the libxml1/libxml2
6620         compatibility macros as taught by http://xmlsoft.org/upgrade.html;
6621         removed xmlKeepBlanksDefault(0) in favour for proper
6622         xmlIsBlankNode() testing. Lots of other fixups to use the
6623         "libxml1.5" (libxml2 parser embedded in recent libxml1), and to
6624         make libxml1 output correct files.
6626         * configure.in: use libxml2 (>= 2.3.9) if it's found, or
6627         libxml1 (>= 1.8.14). Exactly one of these must be installed (devel
6628         packages). If both devel packages are found, the build will stop 
6629         (Fredrik: please add a Build-Conflicts: on libxml2-dev for the moment) 
6631         * lib/bezier_conn.c: (bezierconn_init): Lars, you forgot to
6632         allocate the first handle :-)
6633         
6634         * lib/object.c: (object_init): <gratuitous>g_new() used instead of
6635         a cast and a sizeof.</gratuitous>
6637         * objects/custom/custom_object.c: (custom_copy): don't call
6638         text_get_attrbutes if the shape has no text...
6639         (custom_update_data): The info->resize_with_text code was a bit
6640         directive; basically, the shape's bounding box was forced to be 
6641         proportional to the text's bounding box.... This fixes #57187.
6642         
6643         * objects/custom/shape_info.c: (load_shape_info): Set an obvious
6644         default for info->aspect_ratio; unobfuscated a line about
6645         info->resize_with_text;
6646         
6647 2001-08-15  Cyrille Chepelov <chepelov@calixo.net>
6649         * lib/properties.h: added comments next to the PROP_TYPEs to tell
6650         which C Property subclass to use.
6651         
6652         * plug-ins/dxf/dxf-import.c: (read_entity_line_dxf): Removed the
6653         cast-ridden form of setting properties in a list, in favour for
6654         the "local pointers" form. I'll take any better offer...
6656 2001-08-14  Cyrille Chepelov <chepelov@calixo.net>
6657         
6658         * lib/font.c: fprintf(...) --> fprintf(format...)
6660         * configure.in: added a disabled versioned test for glib.
6661         * lib/prop_geomtypes.c: (bezpointprop_load), (bezpointprop_save),
6662         (bezpointarrayprop_load), (bezpointarrayprop_save): replaced
6663         g_critical() with a simple g_error(). Proper fix is to implement
6664         that stuff. 
6666         * lib/properties.h: PROP_STD_TEXT is a PROP_TYPE_TEXT, not a
6667         PROP_TYPE_STRING.
6668         
6669         * lib/properties.h:     
6670         * lib/propdesc.c: (prop_desc_list_calculate_quarks):
6671         * lib/proplist.c: (find_prop_by_name_and_type):
6672         * lib/prop_basic.c: (make_new_prop), (initialize_property):
6673         * lib/propoffsets.c: (do_set_props_from_offsets),
6674         (do_get_props_from_offsets), (prop_offset_list_calculate_quarks):
6675         Added a type_quark member to PropDescription, Property and
6676         PropOffset. Used it to implement a safety in
6677         do_[sg]et_props_from_offsets().
6678                 
6679         * objects/flowchart/diamond.c: the diamond's text was not saved,
6680         and thus not even copied (c&p).
6681         * objects/standard/textobj.c: ditto.
6683         Most of the above changes thanks to Robert Young's testing. Thanks !
6684         
6685 2001-08-14  Kjartan Maraas  <kmaraas@gnome.org>
6687         * sheets/*.sheet: Added some Norwegian translations (both nynorsk
6688         and bokmÃ¥l).
6689         
6690 2001-08-13  Cyrille Chepelov  <chepelov@calixo.net>
6692         * lib/proplist.c (prop_list_from_descs): added a call to
6693         prop_desc_list_calculate_quarks(). (find_prop_by_name_and_type):
6694         too embarrassing to tell.
6695         
6696         * lib/propdesc.c (prop_desc_list_calculate_quarks): converted the
6697         while loop to a for loop, for symmetry with
6698         prop_offset_list_calculate_quarks().
6700         * lib/geometry.h: new inline function, rectangle_equals.
6702         * lib/diagramdata.[ch]: refactored a bit the diagram extents
6703         computation logic, and changed it to always be the union of the
6704         visible layers' extents. This should close #58882 (Debian
6705         #107167), and fixes #55498.
6707         * app/display.c: made the initial visible box more coherent with
6708         the diagram being loaded's extents.
6710         * app/prop_attr.c: don't set the font (from offset) if font_data
6711         is NULL. Two brainos in colorprop_load() and fontprop_load().
6712         
6713 2001-08-13  Cyrille Chepelov  <chepelov@calixo.net>
6715         * lib/properties.[ch]: split in a lot of pieces: 
6717         * lib/prop_*.[ch] (NEW): all property types are now first-class
6718         objects, inheriting from the original abstract Property type.
6719         * lib/propdesc.c (NEW): property description handling routines
6720         * lib/propoffsets.c (NEW): property offset handling routines
6721         * lib/proplist.c (NEW): property list handling routines
6722         * lib/propobject.c (NEW): property list <-> object routines
6723         * lib/propregistry.c (NEW): holds the PropertyType-->PropertyOps
6724         relations.
6725         * lib/propinternals.h: prototypes for stuff not usually needed by 
6726         the outside of StdProps.
6727         * lib/Makefile.am: a lot of new files have been added...
6729         THE ABOVE CHANGES ARE MAJOR CHANGES AND AFFECT THE WHOLE TREE, IN
6730         BOTH INTERFACES AND RUN-TIME STABILITY.
6732         * lib/plug-ins.h: bumped up DIA_PLUGIN_API_VERSION
6733         
6734         * lib/object.h: removed the incestuous relationship with
6735         properties.h' contents. Now a Property list is a GPtrArray -->
6736         object interface change !
6738         * app/app_procs.c/app_init(): removed a disabled call to a
6739         non-existent routine. Added a call to stdprops_init().
6740         
6741         * objects/Makefile.am: disabled the construction of EML. I'm not
6742         touching these until a certain issue is solved (or this module
6743         removed).
6744         * app/group.c:  
6745         * objects/**/*.c except objects/EML/*: adapted all stdprop-using 
6746         objects to the interface changes.
6747         
6748         * app/disp_callbacks.c: killed a warning.
6749         * lib/dia_xml.[ch]: sprinkled "const" modifiers. 
6751         * app/commands.c: 
6752         The macros PROP_VALUE_* have disappeared. Adapted to using the new 
6753         interface.
6755         * plug-ins/dxf/dxf-import.c: 
6756         * plug-ins/xfig/xfig-import.c: 
6757         PROP_VALUE_* macros have been removed. Converted to the new API.
6759         * plug-ins/python/**/*: I gave up converting this; I can't
6760         compile --with-python (problems with object.h defined both by us
6761         and by Python). I'll gladly help whomever cares to fix it !
6762         (or, fix it myself if someone tells me how to compile it).
6763         
6764         * configure.in: added the UNICODE-related progress defines.
6765                 
6766         * configure.in:
6767         * lib/geometry.h: On Solaris and perhaps other systems, finite()
6768         is defined in ieeefp.h rather than in math.h. Patch from Andrew
6769         Halper <ashalper@acm.org> with further modifications, isinf() is
6770         provided by -lsunmath (sunmath.h).
6771         
6772         * lib/font.c: conditionally disabled Lars' debugging messages.
6773         Bracketed the definition of DiaFontFamily with #ifdef HAVE_FREETYPE.
6774         
6775 2001-08-11  Lars Clausen  <lrclause@cs.uiuc.edu>
6777         * lib/bezier_conn.h: 
6778         * objects/standard/bezier.c (bezierline_create): 
6779         * lib/bezier_conn.c (bezierconn_init): 
6780         Preparations for use of userdata for bezier lines.
6781         
6782         * objects/standard/polygon.c: 
6783         * objects/standard/create.h:
6784         * lib/polyshape.c:
6785         * lib/polyshape.h:
6786         * plug-ins/xfig/xfig-import.c:
6787         Use of user_data for polygon as well, including adding
6788         polyshape_set_points.  Include file for non-interactive 
6789         creation of standard objects, objects/standard/create.h
6791 2001-08-10  Lars Clausen  <lrclause@cs.uiuc.edu>
6793         * app/render_gdk.c: 
6794         * app/render_gdk.h: 
6795         * lib/font.c:
6796         * lib/font.h:
6797         * lib/widgets.c:
6798         More preliminary freetype support.  Not at all functional, crashes
6799         when rendering.
6801         * lib/poly_conn.h: 
6802         * lib/poly_conn.c: 
6803         * objects/standard/polyline.c: 
6804         Support for creating polyline objects with more than two points.
6805         This includes an extra function and a prototype change in the
6806         poly_conn lib object.
6808         * lib/object.c (object_copy): Fixed memory leak of handles and
6809         connections.
6811 2001-08-08  Abel Cheung  <maddog@linux.org.hk>
6813         * dia.desktop: added traditional Chinese strings
6815 2001-08-04  Cyrille Chepelov  <chepelov@calixo.net>
6817         * NEWS: updated to reflect build-time dependencies.
6819         * lib/properties.[ch]: wrote get_prop_descriptions() as a wrapper
6820         around obj->ops->describe_props(obj). Quarks are none of an
6821         object's business in the general case... 
6822         * lib/text.c: Added an apply_textattr_properties() function to
6823         factor out some common code related to applying a dialog's text
6824         attribute properties to a (Text *) which wasn't edited there. 
6825         Ditto for textstr, for the string part of an objet.
6827         * objects/GRAFCET/action.c:
6828         * objects/SADT/annotation.c:
6829         * objects/SADT/box.c: used apply_textattr_properties().
6830         
6831         * objects/UML/actor.c: 
6832         * objects/UML/branch.c:
6833         * objects/UML/component.c:
6834         * objects/UML/constraint.c:
6835         * objects/UML/small_package.c:
6836         * objects/UML/state.c:
6837         * objects/UML/usecase.c:
6838         * objects/UML/large_package.c:
6839         * objects/UML/note.c:
6840         * objects/UML/node.c:
6841         * objects/UML/message.c:
6842         * objects/UML/classicon.c:
6843         * objects/UML/object.c:
6844         * objects/UML/realizes.c:
6845         * objects/UML/dependency.c:
6846         * objects/UML/implements.c:
6847         slim-fast(tm) cure using more StdProps, and UTF-8 audit.
6848         (most objects were already using StdProps to some extent ; this
6849         systematises usage and removes some dead wood). 
6850         
6851         * objects/UML/stereotype.[ch]: use UTF-8 internally. const police work.
6852         * objects/UML/uml.[ch]: audited for UTF-8.
6854         * objects/UML/class.c: the UML_STEREOTYPE_* strings defined by
6855         uml.h can be in UTF-8... this code isn't yet ready. Duplicating a
6856         private (ISO-8859-1) definition.
6857         
6858         * lib/charconv.c: Added a warning if we didn't run
6859         nl_langinfo(CODESET) but rely instead on a hardcoded default.
6860         
6861 2001-08-02  Cyrille Chepelov  <chepelov@calixo.net>
6863         * lib/diamenu.h:
6864         * app/disp_callbacks.c: added a way for an object to cause an
6865         already realised menu to be destroyed (for instance if it changes
6866         too much).
6868         * objects/custom/custom_object.c: used the above to fix #55073.
6870 2001-08-01  Lars Clausen  <lrclause@cs.uiuc.edu>
6872         * configure.in: Remove 2.50 prereq.
6874 2001-07-30  Cyrille Chepelov  <chepelov@calixo.net>
6876         * po-checktrans.py: under some circumstances, there was one column 
6877         more than what was supposed to be, thus breaking the formatting.
6878         
6879 2001-07-29  Cyrille Chepelov  <chepelov@calixo.net>
6880         
6881         * objects/SADT/annotation.c: forgot to add a #include <stdlib.h>
6883         * NEWS: updated with new stuff since 0.88
6885         * shapes/network/antenna.shape: the text was misplaced ; fixed.
6887         * shapes/network/firewall.(shape|xpm) (NEW): a brick-wall looking
6888         firewall router (upon request from Cyril Lacoux
6889         <clacoux@easter-eggs.com>)
6891         * configure.in (didn't rename to configure.ac): autoconf 2.50
6892         constructs were used ; added an AC_PREREQ call to guard against
6893         older autoconfs.
6894         
6895 2001-07-27  Cyrille Chepelov  <chepelov@calixo.net>
6897         * lib/properties.c: minor clean-ups with the event delivery code.
6899         * EML/instantiation.c: brought this object back from stone and ice
6900         age.    
6902         * app/diaconv.c(NEW): added a command-line conversion tool. Still
6903         lacks a man page and correctness. In fact, it doesn't work. Please
6904         see #58196 if you want to finish it.
6905         
6906         * lib/message.[ch]: redefined things a little so that a different
6907         message_internal routine could be passed.
6908         applications can use that to fit themselves to the display model.
6910 2001-07-26  Cyrille Chepelov  <chepelov@calixo.net>
6912         * objects/SADT/box.c: 
6913         * objects/GRAFCET/action.c: spelling in property descriptors (name
6914         field...)
6915         * objects/SADT/annotation.c: ditto, plus a temporary test of the
6916         event delivery code (try to click on the "click me !" button !).
6918         * app/group.c: 
6919         * lib/properties.[ch]: improved (fixed) support for group event 
6920         handlers. Fixed various things from yesterday's code to make it
6921         not too obviously crash.
6923 2001-07-26  Cyrille Chepelov  <chepelov@calixo.net>
6925         * app/group.c: added delivery of events to the first member of the
6926         group which is able to process it.
6928         * lib/properties.c(prop_desc_lists_intersection): properties
6929         don't match if they don't have identical event handler.
6930         * lib/properties.h: simplified the PropEventHandler signature.
6932         Event delivery code is still untested so far, but should be
6933         lurking harmless.
6934         
6935 2001-07-25  Cyrille Chepelov  <chepelov@calixo.net>
6937         * lib/properties.[ch]: Added (untested !) property event handler
6938         capability. Added a new PROP_TYPE_BUTTON, for the purpose of
6939         generating such events. This stuff compiles, and should lurk
6940         around silently as long as you don't declare property descriptors
6941         with events (AFAICT).
6942         In object_create_props_dialog() and friends:
6943         attached a single structure with lots of data instead of lots of
6944         little attachments of data to the dialog widget.
6945         
6946         * lib/object.h: fixed mild typedef breakage introduced by the above.
6948 2001-07-17  Lars Clausen  <lrclause@cs.uiuc.edu>
6950         * lots of files: Changed Font to DiaFont
6951         * */Makefile.am: Added FREETYPE_LIBS
6952         * plug-ins/xfig/xfig-export.c: Improved (working:) color handling
6954 2001-07-13  Kjartan Maraas  <kmaraas@gnome.org>
6956         * configure.in: Added "nn" to ALL_LINGUAS.
6957         
6958 2001-07-09  Alex Larsson  <alexl@redhat.com>
6960         * app/disp_callbacks.c:
6961         Add gdk_im_ready() calls to XIM code.
6963 2001-07-04  Cyrille Chepelov  <chepelov@calixo.net>
6965         * lib/properties.[ch]: splitted prop_get_widget() into
6966         prop_get_widget() (gives a widget but doesn't fill it) and 
6967         prop_reset_widget() (fills an existing widget with a property's value).
6969         * lib/widgets.[ch]: const enforcement police work.
6971         * shapes/network/antenna.shape: added a connection point at top,
6972         upon request from <Emmanuel.Quemener@cri.ens-cachan.fr>.
6973         
6974 2001-06-25  Cyrille Chepelov  <chepelov@calixo.net>
6976         * intl/*: tested with gettext-0.10.38
6977         * configure.in: moved a macro call around (AM_PROG_CC) to keep
6978         some of autogen.sh from complaining.
6979         * INSTALL: added a warning against gettext older than at least 0.10.36
6980         
6981 2001-06-19  Cyrille Chepelov  <chepelov@calixo.net>
6983         * configure.in: added explicit calls to AM_LANGINFO_CODESET and
6984         AM_ICONV (both provided by gettext)
6986 2001-06-14  Cyrille Chepelov  <chepelov@calixo.net>
6988         * lib/charconv.c: corrected the degraded mode for when
6989         !HAVE_UNICODE. Thanks to Ben A. Hetland for reporting this.     
6991         * objects/chronoline/chronoline_events.c: UTF8 compliance.
6992         
6993 2001-06-13  Cyrille Chepelov  <chepelov@calixo.net>
6995         * lib/properties.[ch]: convenience macros around PROP_NOTEBOOKS ;
6996         new "eye candy" properties: PROP_MULTICOL_(BEGIN|PAGE|END) to lay 
6997         widgets on several columns, PROP_FRAME_(BEGIN|END) to put widgets
6998         into a frame box.
7000         * objects/chronogram/chronoline.c:
7001         * objects/chronogram/chronoref.c: took advantage of the above to
7002         make nicer looking dialogs.
7004         * lib/charconv.[ch]: added charconv_unichar_to_utf8 ("inspired"
7005         from libunicode's internals).
7006         * lib/message.c: convert strings to local encoding prior to
7007         display (UNICODE_WORK_IN_PROGRESS)
7008         * lib/properties.[ch]: convert strings to local encoding prior to
7009         display, and back to UTF8 (UNICODE_WORK_IN_PROGRESS).
7010         * lib/render.h: tagged strings as (utfchar *) instead of (char *)
7011         * lib/stringprerenderer.[ch]: ditto
7013         (lib/text.c has been audited for UTF8, but the size of the changes
7014         make them inappropriate for commit before 0.89)
7015         
7016 2001-06-12  Cyrille Chepelov  <chepelov@calixo.net>
7018         * objects/boolequation.h (<save|load>_boolequation): made the 
7019         prototypes for match the .c file.
7020         
7021         * samples/grafcet.dia: minor non-conformance with IEC-848
7022         fixed (in the transition from step 100 to step 101).
7024         * lib/properties.[ch]: added a flag (PROP_FLAG_DONT_MERGE) to
7025         disallow editing of properties if the object is part of a group.
7027         * objects/chronogram/chronoline.c: 
7028         * objects/SADT/annotation.c:
7029         * objects/SADT/box.c:
7030         * objects/GRAFCET/step.c:
7031         * objects/GRAFCET/transition.c:
7032         * objects/GRAFCET/condition.c: took advantage of PROP_FLAG_DONT_MERGE.
7033         
7034 2001-06-12  Hans Breuer  <hans@breuer.org>
7036         * lib/libdia.def : removed lazyprop exports
7037         * lib/makefile.msc : removed lazyprop.obj
7039         * objects/custom/custom_objects.c : use HAVE_UNISTD_H
7040         and avoid crashes by always creating a custom->text,
7041         when (custom->info->has_text) 
7043         * objects/makefile.msc : removed sybase from build
7045         * objects/GRAFCET/boolequation.c (<save|load>_boolequation) :
7046         ObjectNode is a pointer already, which is what we want
7047         instead of a pointer pointer.
7049         * plug-ins/wmf/wmf.cpp : fixed problem with arc scaling
7050         and implemented working export for images
7052         * shapes/network/zip-disk.shape : added connection points 
7054 2001-06-12  Cyrille Chepelov  <chepelov@calixo.net>
7056         * objects/SADT/box.c: removed lazyprops for standard props.
7057         * objects/chronograms/chronoline.c: removed lazyprops (phew !)
7058         * objects/chronograms/chronoref.c: ditto 
7060         * lib/Makefile.am:
7061         * lib/dummy_dep.h:
7062         * lib/connpoint_line.c:
7063         * lib/lazyprops.[ch] (DELETED): good riddance (closes #55895)
7064         * lib/properties.[ch]: new property types:
7065             - PROP_TYPE_STATIC: static text to be displayed in the dialog.
7066             - PROP_TYPE_MULTISTRING: same as string, but renders as a
7067             multi-line entry box.
7068             - PROP_TYPE_NOTEBOOK_BEGIN,_PAGE,_END: stuff to make dialogs
7069             in a tabbed-notebook style (this is a bit complicated to use; 
7070             see objects/chronograms/chronoline.c for an example).
7071                
7072 2001-06-11  Cyrille Chepelov  <chepelov@calixo.net>
7074         * objects/GRAFCET/boolequation.[ch]: zap lazyprops. Add standard props.
7075         * objects/GRAFCET/step.c: ditto.
7076         * objects/GRAFCET/vector.c: ditto.
7077         * objects/SADT/annotation.c: ditto.
7078         * objects/SADT/arrow.c: ditto (plus bounding box fixes).
7079         
7080         * lib/properties.[ch]: two more non-visible types
7081         (PROP_TYPE_ENUMARRAY and PROP_TYPE_INTARRAY).
7083         * lib/neworthconn.[ch]:
7084         * lib/orthconn.[ch]: added support for manipulation through
7085         standard properties.
7087         * configure.in: removed -fomit-frame-pointer, this seems to
7088         confuse recent gcc/gdb's, maybe we'll get better stack dumps in 
7089         bugzilla.
7091         * charconv.[ch]: more functions from unicode.h.
7092         get_local_charset() wasn't working properly, fixed now.
7093         A subtle crashbug in charconv_utf8_to_local8() nailed (thanks to 
7094         ElectricFence !)
7095         
7096         * objects/EML/process.h: pulled the bits of lazyprops.h it uses.
7097         * lib/lazyprops.[ch]: put a big fat warning in.
7099         * app/render_eps.c: one line mysteriously went away, causing a
7100         variable to be used uninitialised....
7102 2001-06-10  Cyrille Chepelov  <chepelov@calixo.net>
7104         * app/app_procs.c: commented out the call to
7105         bind_textdomain_codeset(): it's premature.
7106         
7107         * lib/connpoint_line.c: a NULL point can be given to
7108         connpointline_adjust_count(), in case there's not really a clicked
7109         point.
7111         * lib/textattr.h(NEW): moved the definition of TextAttributes to sort
7112         #include order troubles. #included by lib/text.h, so there is no 
7113         impact outside lib/.
7114         * lib/properties.[ch]: added support for CONNPOINT_LINE and
7115         (nonvisible) TEXT properties.
7117         * objects/GRAFCET/action.c:
7118         * objects/GRAFCET/vergent.c: dropped lazyprops for standard
7119         properties.
7120         
7121         * objects/UML/lifeline.c: pruned some legacy stuff (now pure
7122         standard properties code). Grafted a dynamic number of connection
7123         points (heavily inspired from what Vergent does). This is the real
7124         fix for #55863.
7126         * objects/GRAFCET/boolequation.[ch]: audited for UTF-8
7128         * lib/fonts.c: some hardening (mostly g_assert())
7129 2001-06-09  Cyrille Chepelov  <chepelov@calixo.net>
7131         * app/app_procs.c (app_init): added a call to
7132         bind_textdomain_codeset() so that gettext gives us UTF-8 strings
7133         (UNICODE_WORK_IN_PROGRESS).
7134         
7135 2001-06-08  Cyrille Chepelov  <chepelov@calixo.net>
7137         * plug-ins/xfig/xfig-import.c: corrected a typo (fixes #55910)
7139         * objects/UML/lifeline.c: patch from Marc <mrw@siemens.ch> 
7140         (fixes #55863) : some clean-ups in the handling of connection
7141         points. Now the total number of connection points is just a
7142         #define (the proper solution is to retrofit the GRAFCET Vergent's
7143         dynamic behaviour wrt connection points).
7144         
7145 2001-06-07  Cyrille Chepelov  <chepelov@calixo.net>
7147         * app/app_procs.c (app_init): added a call to unicode_init() (only
7148         if HAVE_UNICODE, of course).
7150         * lib/charconv.c: simplified the code which detects the local
7151         charset. No need to use <langinfo.h>, libunicode already takes the
7152         burden of figuring that out. Also, if local charset is utf8, no
7153         conversion will take place.
7154         Exposed a way to get the current charset (similar to
7155         unicode_get_charset() but actually working, hopefully).
7157         * lib/charconv.h: Added a partial non-UTF8 implementation of
7158         unicode.h if !HAVE_UNICODE (actually, all the time for the
7159         moment). The UTF8 implementation is just macros on libunicode (use
7160         the functions prefixed by uni_, as defined by charconv.h, not
7161         unicode_, unless that code is to be compiled only if HAVE_UNICODE).
7162         From now on, all strings which don't *need* to be ASCII should be
7163         utfchar *, not gchar *. Just include charconv.h, let it sort out
7164         the details (such as: "is libunicode available and enabled?") 
7166         * lib/ps-utf8.c: fixed a few name clashes. Used the charconv.h
7167         "API" instead of directly libunicode. Removed the now unnecessary
7168         speculative clustering of characters in encoding pages.
7170         * app/render_eps.c: made the local8->utf8 conversions dependent of
7171         !UNICODE_WORK_IN_PROGRESS (this is not where the local8/utf8
7172         boundary will be when this WIP is done).
7174         * lib/dia_xml.c (data_point): fixed a format string typo.
7176         * po/POTFILES.in: added all C files from lib/ 
7177         
7178 2001-06-06  Cyrille Chepelov  <chepelov@calixo.net>
7180         * app/disp_callbacks.c: make sure the objects' connected objects
7181         are updated when the objects' size changes after a keypress event
7182         (fixes #51222)
7184         * configure.in: added a big warning about the possible future
7185         non-optionality of --enable-unicode. 
7187         * TODO: removed entries which look like done ; added a few ones
7188         (Bugzilla "enhancement" bugs may be a better way to keep track of
7189         this)
7190         
7191 2001-06-05  Cyrille Chepelov  <chepelov@calixo.net>
7193         * objects/UML/message.c: got rid of #55564 and of message_copy()
7194         by using more standard properties (are the message_state_*()
7195         functions still necessary ?)
7197 2001-06-04  Fredrik Hallenberg  <hallon@lysator.liu.se>
7199         * lib/plug-ins.c: 
7200         * objecs/custom/shape_info.c:
7201         * plug-ins/shape/shape-export.c:
7202         * plug-ins/svg/render_svg.c: patch from obecian <obecian@openbsd.org>
7203         use xmlChar instead of obsolete CHAR.
7205 2001-06-03  Hans Breuer  <hans@breuer.org>
7207         * app/diagram.h : added prototype for diagram_update_menu_sensitivity()
7208         * app/commands.c : give the right number of parameters
7209         to diagram_update_menu_sensitivity ()
7211         * app/preferences.c : do proper initialization for DiaPrefsData:
7212         render_bounding_boxes. It would be a real surprise if 'hidden'
7213         properties would have ever worked before.
7214         Don't try to access the widgets of hidden property, it does not
7215         have one.
7217         * lib/diagramdata.h : make render_bounding_boxes a DIAVAR, cause
7218         it is defined in libdia, but initialized from dia app, which 
7219         otherwise gave nice start-up crashes.
7221         * lib/diagramdata.c : initialize the color for rendering bounding 
7222         boxes in the Dia range (0 .. 1.0)
7224         * lib/libdia.def : added *_bbox functions for export
7226         * lib/makefile.msc : added new sources
7228         * objects/custom/custom_object.c : use HAVE_UNISTD_H
7230 2001-05-30  Cyrille Chepelov  <chepelov@calixo.net>
7232         * app/interface.c:
7233         * app/menus.c: patch from Hubert Figuiere <hfiguiere@teaser.fr> ;
7234         removes a translation of menus (in a place where there shouldn't
7235         have been), which gets rid of a waterfall of warnings if LANG!=C,
7236         and a fix to #55047.
7238 2001-05-29  Steffen Macke     <sdteffen@yahoo.com>
7240         * lib/charconv.c : added #include <errno.h>
7242         * app/dia_embedd.c : updated menus_get_item_from_path usage
7243         
7244 2001-05-27  Cyrille Chepelov  <chepelov@calixo.net>
7246         * lib/ps-utf8.c: Strings in Symbol fonts were incorrectly rendered.
7247         Added a special case for Symbol strings, so that they're not
7248         re-encoded using the LN encoding (we use the bare Adobe encoding
7249         instead).
7251         * objects/custom/custom_object.c: Now that #52912 is fixed,
7252         I could remove the ugly hack I wrote to squash the shape bounding box
7253         problem shown by Ben A. Hetland a few months ago, and fix it
7254         properly this time.
7255         
7256         * lib/text.c: enlarged a little the bounding box to account for
7257         the cursor in rightmost position.
7258         
7259         * lib/diagramdata.c: draw bounding boxes only if the relevant
7260         variable is set (as before), but also only if the rendere is
7261         interactive (ie, don't bother rendering bounding boxes on 
7262         Postscript...)
7263         Made the bounding box's line width a fixed value, 0.01
7264         
7265         * lib/boundingbox.c: fixed the "pointy corners" code for polylines
7266         and assymmetric control beziers. Implemented ellipse_bbox().
7267         
7268         * Makefile.am: incantations to get po/dia.pot build, as suggested
7269         by Hubert in #55075.
7270         
7271         * shapes/network/computer.shape: typo fixed.
7272         * shapes/network/antenna.shape: fixed #55074 (antenna is now
7273         properly translucent, except for its base where it makes sense. It
7274         doesn't look that ugly anymore if transparent mode is on).
7276         * configure.in: --enable-unicode is now the default. This
7277         still currently affects only printing.
7278         
7279 2001-05-26  Cyrille Chepelov  <chepelov@calixo.net>
7281         * lib/boundingbox.c: fixed a minor logic error wrt closed shapes. 
7282         The overshoot code is buggy, and the bounding boxes for polyshapes
7283         looks a bit cheezy. To be done ASAP.
7285 2001-05-26  James Henstridge  <james@daa.com.au>
7287         * configure.in: call AM_PATH_PYTHON rather than AM_PATH_PYTHON_JH.
7288         This should clear up some of the build problems people have been
7289         having.
7291         * acinclude.m4: call AM_PATH_PYTHON_JH AM_PATH_PYTHON
7293 2001-05-26  Cyrille Chepelov  <chepelov@calixo.net>
7295         * lib/Makefile.am:
7296         * lib/boundingbox.[ch] (NEW): (some) refactoring of the bounding
7297         box code (beginning with lines, polylines and polybeziers), into a
7298         more generic facility. While at it, a better shot at correctly
7299         computing the bounding box of a Bezieroid (should take care of
7300         #53424, #51233 and of course is part 1 of #52912).
7302         * lib/diagramdata.c: turned the RENDER_BOUNDING_BOXES conditional
7303         into a hidden preference (set render_bounding_boxes in diarc).
7304         * app/preferences.[ch]: Added support for hidden preferences.
7306         * lib/geometry.[ch]: sprinkled with "const" modifiers.
7307         
7308         * lib/bezier_conn.[ch]:
7309         * lib/beziershape.[ch]:
7310         * lib/connection.[ch]:
7311         * lib/element.[ch]:
7312         * lib/poly_conn.[ch]:
7313         * lib/orth_conn.[ch]:
7314         * lib/neworth_conn.[ch]:
7315         * lib/polyshape.[ch]: adapted to take advantage of
7316         boundingbox.[ch] instead of relying on private (duplicate) code.
7318         * object/FS/flow.c:
7319         * object/GRAFCET/action.c:
7320         * objects/GRAFCET/condition.c:
7321         * objects/GRAFCET/vergent.c:
7322         * objects/GRAFCET/vector.c:
7323         * objects/SADT/annotation.c:
7324         * objects/SADT/arrow.c:
7325         * objects/ER/participation.c:
7326         * objects/UML/constraint.c:
7327         * objects/UML/implements.c:
7328         * objects/UML/lifeline.c:
7329         * objects/UML/message.c:
7330         * objects/UML/realizes.c:
7331         * objects/UML/generalization.c:
7332         * objects/UML/association.c:
7333         * objects/UML/dependency.c:
7334         * objects/FS/flow-ortho.c:
7335         * objects/network/bus.c:
7336         * objects/standard/arc.c:
7337         * objects/standard/bezier.c:
7338         * objects/standard/beziergon.c:
7339         * objects/standard/line.c:
7340         * objects/standard/polygon.c:
7341         * objects/standard/zigzagline.c:
7342         
7343         * objects/standard/polyline.c: Some *BBExtras structures changed
7344         names while moving to boundingbox.[ch]. A trivial mass-renaming.
7345         
7346 2001-05-20  Cyrille Chepelov  <chepelov@calixo.net>
7348         * app/disp_callbacks.c (ddisplay_canvas_events): Take into account
7349         wheel mouses for scrolling (from Patrick Sung <phsung@ualberta.ca>)
7351         * app/display.c (ddisplay_update_scrollbars): from Patrick's
7352         suggestion, remove the extra scrollable area (it was only visible
7353         to the scrollbars). This is experimental.
7354         
7355         * objects/custom/custom_object.c: If a shape's icon file doesn't 
7356         exist, warn and substitute a default icon, instead of crashing.
7357         (fixes #52913)
7358         
7359         * objects/network/network.c:
7360         * shapes/network/modularswitch.(shape|xpm) (NEW):
7361         * shapes/network/printer.(shape|xpm) (NEW):
7362         * shapes/network/genmonitor.(shape|xpm) (NEW):
7363         * shapes/network/computer.(shape|xpm) (NEW):
7364         * shapes/network/Makefile.am: four less objects, four more shapes.
7365         These were the last known RenderObjects. (phew !)
7367         * lib/Makefile.am:
7368         * lib/dummy_dep.h:
7369         * objects/sybase/Makefile.am: 
7370         * objects/network/Makefile.am: Removed the older Renderobjects
7371         from the build, and their infrastructure (not yet deleted,
7372         though).
7374         * shapes/network/sceadplug.shape:
7375         * shapes/network/antenna.shape:
7376         * shapes/network/modem.shape:
7377         * shapes/network/hub.shape:
7378         * shapes/network/rj45plug.shape:
7379         * shapes/sybase/client.shape:
7380         * shapes/sybase/dataserver.shape:
7381         * shapes/sybase/ltm.shape:
7382         * shapes/sybase/repserver.shape:
7383         * shapes/sybase/rsm.shape:
7384         * shapes/sybase/stableq.shape: Minor corrections (line widths were
7385         ten times too narrow).
7386         
7387 2001-05-19  Cyrille Chepelov  <chepelov@calixo.net>
7389         * objects/network/network.c:
7390         * shapes/network/sceadplug.(shape|xpm) (NEW):
7391         * shapes/network/antenna.(shape|xpm) (NEW):
7392         * shapes/network/modem.(shape|xpm) (NEW):
7393         * shapes/network/Makefile.am: four less objects, four more shapes.
7394         
7395         * lib/Makefile.am:
7396         * lib/diagramdata.c:
7397         * lib/render.h:
7398         * lib/string_prerenderer.[ch] (NEW):
7399         Add a new renderer primitive, predraw_string() (does nothing, to be
7400         used as a hook to optimise the character encodings if needed). 
7401         Added a string pre-renderer, which can be viewed as a filter
7402         renderer (to route draw_string() to predraw_string() and ignore
7403         the rest, in a first rendering pass)
7404         
7405         * app/render_eps.c: Took advantage of the above to make wholly
7406         optimised Postscript encoding page(s), even (especially) with 
7407         non-latin1 code (HAVE_UNICODE must be true).
7409         (#53512 in fact is wholly resolved).
7410         
7411 2001-05-18  Cyrille Chepelov  <chepelov@calixo.net>
7413         * lib/charconv.c: steps towards resolution of #53512 (inspired by
7414         Alexey Novodvorsky <aen@logic.ru>'s patch).
7416         * app/menus.c (dia_menu_signal_proxy): checked that the signal
7417         handler is not NULL before transferring control to it... (fixes #52836)
7419         * app/app_procs.c (app_init): removed non-constant initialiser
7420         (fixes #52950)
7422         * objects/custom/custom_object.c:
7423         * objects/custom/shape_info.[ch]:
7424         * objects/custom/test.xml: merged patch #53476 from Steven Hawkins 
7425         <skh@mathstar.com>. This add support for a <svg:text> shape
7426         element, and some related style properties (font, font height, 
7427         alignment)
7429         * doc/custom_shapes: a precision about the meaning of case in a
7430         SVG path (closes #52364)
7432         * lib/dummy_dep.h: fix for SGI IRIX 6.2 (#53053, reported and
7433         fixed by <drk@sgi.com>)
7434         
7435 2001-05-17  Cyrille Chepelov  <chepelov@calixo.net>
7437         * objects/network/network.c:
7438         * shapes/network/Makefile.am:
7439         * shapes/network/hub.(shape|xpm) (NEW):
7440         * shapes/network/flash.(shape|xpm) (NEW):
7441         * shapes/network/rj45plug.(shape|xpm) (NEW):
7442         More shapes, less renderobjects.
7444 2001-05-16  Cyrille Chepelov  <chepelov@calixo.net>
7445         
7446         * plug-ins/svg/render_svg.c: typo made exported ellipses
7447         corrupted (zero Y pseudo-radius).
7449         * objects/network/network.c:
7450         * objects/network/disc.c:
7451         * shapes/network/disc.(shape|xpm): Converted the first
7452         Renderobject into a shape. Normally, old diagrams should reload
7453         without problems (please check this against your diagrams). More
7454         flexibility should be gained that way. I intend to hunt and
7455         eradicate all renderobjects as I can commit cycles to that. 
7457         * objects/Makefile.am:
7458         * configure.in:
7459         * app/Makefile.am:
7460         * objects/sybase/sybase.c:
7461         * shapes/sybase/Makefile.am(NEW):
7462         * shapes/sybase/client.(xpm|shape) (NEW):
7463         * shapes/sybase/dataserver.(xpm|shape) (NEW):
7464         * shapes/sybase/ltm.(xpm|shape) (NEW):
7465         * shapes/sybase/repserver.(xpm|shape) (NEW):
7466         * shapes/sybase/rsm.(xpm|shape) (NEW):
7467         * shapes/sybase/stableq.(xpm|shape) (NEW): converted Sybase
7468         renderobjects into shapes. The Sybase objects are now not compiled
7469         anymore, and ready to be nuked if nobody objects in the next few weeks.
7470         
7471         * app/commands.c:
7472         * app/diagram.[ch]:
7473         * app/disp_callbacks.c:
7474         * app/display.[ch]:
7475         * app/interface.[ch]:
7476         * app/menus.[ch]:
7477         * app/modify_tool.c:
7478         * app/preferences.[ch]:
7479         * app/recent_files.c:
7480         * app/select.c: Added patch #52364 from Hubert Figuiere. This adds
7481         a menu bar reflecting the popup menu, to each display window. This
7482         is optional (changing the preference currently doesn't affect
7483         already opened windows; a few other rough edges to cut).
7485         * plug-ins/wpg/wpg.c:
7486         * plug-ins/xfig/xfig-import.c:
7487         * plug-ins/python/pydia-property.c:
7488         * plug-ins/python/pydia-properties.c:
7489         * plug-ins/python/pydia-geometry.c:
7490         * plug-ins/pstricks/render_pstricks.c:
7491         * lib/arrows.c:
7492         * objects/EML/dbox.c:
7493         * lib/ps-utf8.c: paleolithic C compilers choke on //. Should fix 
7494         #53054.
7496         * lib/ps-utf8.c: improved the clustering of alphabetic character
7497         definitions in custom encodings pages.
7498         
7499 2001-05-02  Hans Breuer  <hans@breuer.org>
7501         * lib/object.h : OBJECT_COMMON_PROPERTIES_OFFSETS correct type 
7502         of 'obj_bb' to PROP_TYPE_RECT
7504         * objects/custom/custom_object.c : take all quarks into account, 
7505         not only 4 as copy&paste suggests
7507         * objects/uml/objects.c : completed the implementation of the
7508         property api to avoid reading of totally bogus data. Removed
7509         the PROBABLY_DEAD_CODE. It actually was dead code, but not because
7510         there was too much but too less ...
7511   
7512         The above changes removed all known crashes (mentioned below) 
7513         from the Property API. Property access is still incomplete though.
7515         * objects/flowchart/box.c :
7516         * objects/flowchart/diamond.c :
7517         * objects/flowchart/ellipse.c :
7518         * objects/flowchart/parallelogram.c :
7519         * objects/uml/classicon.c :
7520         * objects/uml/state.c : calculate number of quarks from quark array 
7521         size instead of using hardcoded values for consistence and to avoid 
7522         future bugs like the above
7523         
7524         * objects/eml/nlist.c : include <string.h> for strcmp()
7526         * lib/dia_xml.c : relax g_warning for values, which
7527         appear to be too small. There is nothing which prevents
7528         them while saving
7530         * plug-ins/python/pydia-geometry.c : changed stringifying of
7531         geometry objects accept BezPoint back to %f, which does not
7532         crash anymore, because all the data is intialized now and it
7533         simply is more readable than %e ...
7535         * plug-ins/python/python-startup.py : removed dependency
7536         to PyGtk, because it isn't required here and probably won't
7537         in i.e.: export filters.
7539         * plug-ins/python/gtkcons.py : create the gtkoutfile even
7540         if sys.stderr.fileno() isn't supported
7542         * app/makefile.msc : make version 0.88
7543         * plug-ins/makefile.msc : make version 0.88 an added new
7544         xfig files to build
7546 2001-05-11  James Henstridge  <james@daa.com.au>
7548         * NEWS: remember to add news items this time.
7550         * dia.spec: update spec file for 0.88 release.
7552         * configure.in: up version number to 0.88
7554         * plug-ins/python/Makefile.am (EXTRA_DIST): fix up typo that was
7555         preventing any of the useful python scripts from being
7556         distributed.
7558         * sheets/Makefile.am (sheet-translation-report): fix bustage I
7559         introduced in my fixups for the 0.87 release :(
7561 2001-05-10  Lars Clausen  <lrclause@cs.uiuc.edu>
7563         * plug-ins/xfig/xfig-import.c: Finally got groups working.
7565 2001-05-09  Lars Clausen  <lrclause@cs.uiuc.edu>
7567         * plug-ins/xfig/xfig-import.c: Improvements to error handling and
7568         group manipulation.
7570 2001-05-09  Cyrille Chepelov  <chepelov@calixo.net>
7572         * lib/ps-utf8.[ch]:
7573         * lib/Makefile.am: fix makefile breakage which led to not
7574         including ps-utf8.[ch] in the released tarballs. 
7576 2001-05-09  James Henstridge  <james@daa.com.au>
7578         * Makefile.am (core-translation-report): dist scripts needed for
7579         this target, and change to $(srcdir) before running.
7581         * sheets/Makefile.am (EXTRA_DIST): actually dist the sheets.  DATA
7582         files aren't automatically included in the tarball by automake
7583         because they could be generated files.
7585         * objects/EML/Makefile.am (EXTRA_DIST): fix directory names.
7587         * doc/en/Makefile.am (install-data-hook): fix up where graphics
7588         are installed.
7590         * configure.in: up version number to 0.87
7592         * plug-ins/python/*.py: no longer necessary to explicitly set
7593         sys.argv, as python.c does it for us now (like it should).
7595         * plug-ins/python/gtkcons.py: fix up so it plays nicely as a dia
7596         python plugin.
7598         * plug-ins/python/python-startup.py: startup script that imports
7599         all modules in $(datadir)/dia/python and ~/.dia/python.
7601         * plug-ins/python/python.c (dia_plugin_init): change so that it
7602         only runs the $(datadir)/dia/python-startup.py script.  Make sure
7603         that sys.argv and __main__.__file__ are set when calling the
7604         startup script.
7606         * plug-ins/python/Makefile.am: update makefile.  Make it install
7607         gtkcons.py plugin.  I haven't set any other plugins to install, as
7608         they look like they are mainly for debugging purposes.
7610         * configure.in: add tests to detect if python is available, so we
7611         can build the python plugin.  Only run if --with-python passed to
7612         configure.
7614 2001-05-08  James Henstridge  <james@daa.com.au>
7616         * acinclude.m4: add macros for detecting python.
7618         * app/menus.c (dia_gnome_menu_get_widget): handle paths that point
7619         at GNOME_APP_UI_SUBTREE entries.
7620         (menus_add_path): function to add a menu item to the menubars.
7621         Uses a hash table to keep track of extra menu items it adds.  Also
7622         notifies the item factory about the entries so that accels can be
7623         saved for them.
7624         (menus_add_path): implement gtk only version.
7625         (menus_init): use menus_add_path() to add the menu.
7626         (plugin_callback): simplify.
7628 2001-05-08  Steffen Macke <sdteffen@yahoo.com>
7630         * app/menu.c: removed #ifndef GNOME; GNOME build was broken
7631         
7632 2001-05-08  Lars Clausen  <lrclause@cs.uiuc.edu>
7634         * plug-ins/xfig/xfig-export.c: 
7635         * plug-ins/xfig/xfig-common.c: 
7636         * plug-ins/xfig/xfig-import.c: 
7637         * plug-ins/xfig/xfig.c: 
7638         * plug-ins/xfig/xfig.h: 
7639         * app/Makefile.am: Added support for exporting to Fig format
7640         (except splits, which are less powerful in Fig).  Some refactoring
7641         along the way.
7643 2001-05-02  Hans Breuer  <hans@breuer.org>
7645         * plug-ins/python/debug_objects.py : added another
7646         test to get massive crashes from the Property API due
7647         to unintialized data.
7649         * app/menu.c : the callback_action wasn't incremented
7650         (should have checked my last optimization). Now more
7651         than one plug-in callback is supported again.
7653         * plug-ins/python/pydia-geometry.c : avoid crashes from
7654         glib, when trying to g_strdup_printf unintialized floats.
7656         * plug-ins/python/pydia-property.c : avoid crashes from
7657         because of string_data == NULL (PROP_TYPE_FILE, PROP_TYPE_STRING)
7659 2001-05-01  Hans Breuer  <hans@breuer.org>
7661         * objects/makefile.msc : added eml
7662         * objects/eml/instantiation.c : initialize 'inst' pointer
7663         before using, zero initialization for objects
7664         * objects/eml/interaction-ortho.c :
7665         * objects/eml/interaction.c : zero initialization for objects
7667         * app/menus.c : removed Gimp mru stuff which slipped in at
7668         2000-08-15, was never activated and will never be needed, 
7669         because of Steffens recent file list patch added at 2001-01-05.
7671         * objects/eml/*.c : some more zero initialization of objects
7672         to avoid infinite (uninitialized) bounding boxes
7674         Implemented a callback api which allows plug-ins to register
7675         menu call backs. Dia for Gnome should compile, but will need 
7676         some extra tweaking to make it work because I can't test it.
7678         * plug-ins/python/pydia-error.h :
7679         * plug-ins/python/pydia-render.c : moved Pxthon function return 
7680         value handling from pydia-render.c to pydia-error.h, to make it
7681         usable for
7682         * plug-ins/python/diamodule.c : implement callback function
7683         registration from and relaying to Python code
7685         * app/menus.c : register and use plug-in menu callbacks
7687         * lib/filter.[hc] : implement filter_register_callback() and
7688         filter_get_callbacks() for the above
7689         * lib/libdia.def : export them
7691         * plug-ins/python/debug_objects.py (new file): 
7692         sample using the above
7694 2001-04-27  Lars Clausen  <lrclause@cs.uiuc.edu>
7696         * plug-ins/shape/shape-export.c (new_shape_renderer): 
7697         The name of a shape is now taken from the dir, to conform with
7698         standard naming.
7700 2001-04-25  Lars Clausen  <lrclause@cs.uiuc.edu>
7702         * app/properties.c (properties_show): Added title containing
7703         object type, plus (hopefully) fix of the ghost properties dialog.
7705 2001-04-16  Cyrille Chepelov  <chepelov@calixo.net>
7707         * app/display.c: remove the display idle handler in case we
7708         destroy the ddisplay (caused crashes in ddd, probably random
7709         crashes elsewhere).
7711         * autogen.sh: 
7712         * configure.in:
7713         * Makefile.am: hack around gettext-0.10.36's new "features".
7714         
7715         * lib/properties.[ch]: added new function object_copy_props().
7716         Added new property type PROP_TYPE_ENDPOINTS
7718         * lib/connection.h: added support for load/saving through the
7719         properties interface.
7721         * lib/object.[ch]: object_load/save/copy_using_properties()
7722         support functions (code factorisations).
7723         
7724         * objects/GRAFCET/boolequation.c: check against null values in
7725         boolequation_set_value() and boolequation_destroy().
7727         * objects/GRAFCET/transition.c: Converted from lazyprops to
7728         standard properties. 31% less (x86) code !
7730         * objects/GRAFCET/condition.c: also converted from lazyprops to
7731         standard properties. Also killed lots of code.
7732         
7733 2001-04-13  Hans Breuer  <hans@breuer.org>
7735         * plug-ins/wmf/wmf.cpp : changed text conversion from
7736         g_utf8_utf16 to g_convert usage. The latter function is already
7737         available in tml's last "official" Gtk+ version (2000-12-26).
7738         This change allows to use recent Dia with either the official
7739         version or the latest cvs "gtk-1-3-win32-production"-branch.
7741 2001-04-14  Lars Clausen  <lrclause@cs.uiuc.edu>
7743         * Patch from David S. Thompson <dcthomp@mail.utexas.edu>:
7744         * app/disp_callbacks.c:
7745         - Allow submenus in DiaMenus.
7746         - Don't require DiaMenu.title to be non-null (so that
7747           submenus aren't required to have titles)
7749         * objects/FS/function.c:
7750         - object menu now has submenus, an almost complete list of
7751           standard-basis verbs, and a start on nouns.
7752         - box padding, dash length, and other visual attributes are
7753           scaled by the font size... eventually font height will be
7754           a function property.
7755         - draw functions with smaller font to make initial view hold
7756           a reasonable number of functions.
7757         
7758 2001-04-13  Cyrille Chepelov  <chepelov@calixo.net>
7760         * sheets/ER.sheet:
7761         * sheets/chronogram.sheet:
7762         * sheets/jigsaw.sheet:
7763         * sheets/sybase.sheet: Updated Dutch sheet translations from Dag
7764         Wieers <dag@wieers.com>
7766 2001-04-13  Hans Breuer  <hans@breuer.org>
7768         * app/app_procs.c (app_exit) : added g_return_if_fail (!app_exit_once)
7769         to ensure that all the deinitialization is only done once. Fixes
7770         recent app exit crash on win32
7772         * lib/dia_xml.c : provide isinf() replacement for msc which does only
7773         have _finite()
7775         * lib/libdia.def : updated
7777         * objects/makefile.msc : added wanlink.c 
7779         * objects/network/wanlink.c : added M_PI_2 definition for poor
7780         platforms which don't have one
7782         * objects/standard/arc.c :
7783         * objects/standard/zigzagline. c: part of ConectionBBExtras wasn't
7784         initialized which led to rather huge bounding boxes (try Ctrl^A on
7785         diagrams with Arcs or ZigZagLines).
7786         * objects/*/*.c : to avoid further bugs like the above changed all
7787         object initializations to g_malloc0 or g_new0
7790 2001-04-09  Cyrille Chepelov  <chepelov@calixo.net>
7792         * lib/paper.[ch]: get rid of "no previous prototype fo `foo'" by
7793         doing a s/T foo()/T foo(void)/ for all possible values of T and foo.
7795         * objects/UML/class.c: 
7796         * objects/UML/usecase.c:
7797         * objects/UML/large_package.c:
7798         * objects/UML/message.c:
7799         * objects/UML/object.c:
7800         * objects/UML/lifeline.c:
7801         * objects/FS/flow.c:
7802         * objects/FS/flow-ortho.c:
7803         * objects/FS/function.c:
7804         * objects/custom/custom_object.c:
7805         * objects/GRAFCET/vergent.c:
7806         * objects/chronogram/chronoref.c:
7807         * objects/SADT/box.c:
7808         * objects/SADT/annotation.c:
7809         * plug-ins/dxf/dxf-import.c:
7810         * plug-ins/xfig/xfig-import.c:
7811         * plug-ins/wpg/wpg.c:
7812         * app/command.c:
7813         * app/app_procs.c:
7814         * app/display.c: /* certainly more WIP than dead code there */
7815         Unused variables, unused static function definitions, forgotten or
7816         incomplete prototypes added or fixed, lack of const or unwanted const,
7817         etc. (mostly clean-ups of leftovers of the pre-properties era).
7818         Non-obvious cases bracketed by #define THIS_IS_PROBABLY_DEAD_CODE,
7819         please check these.
7821         * app/lineprops_area.c: More of the same. Missing prototypes
7822         added, and functions unused outside made static.
7824         * app/recent_files.c:
7825         * app/properties.c:
7826         * app/defaults.c: some variables are used only when doing a GNOME
7827         build.
7828         
7829         * app/magnify.c: missing #include <stdlib.h>.
7831         * app/paginate_gnomeprint.c: Unused variable; missing "message.h".
7833         These are a lot of clean-ups (by the way, this compiles and runs
7834         cleanly with "gcc-3.0 -O2 -Wall --std=gnu99" too !); please grep
7835         for DEAD_CODE, and if it's yours, judge it.
7836         
7837 2001-04-07  Cyrille Chepelov  <chepelov@calixo.net>
7839         * plug-ins/dxf-import.c: some progress with the arcs; still some
7840         clean-ups to do and line width scaling issues to figure out.
7842         * objects/standard/arc.c: start_point and end_point properties
7843         (duplicated from standard/line.c)
7845         * plug-ins/xfig/xfig-import.c: zip ! zap ! no more dead DXF import
7846         code there.
7847         
7848 2001-04-06  Cyrille Chepelov  <chepelov@calixo.net>
7850         * plug-ins/dxf-import.c: setlocale-related clean-ups and fixes ;
7851         preliminary support for arcs (doesn't work). Circles and ellipses are
7852         now transparent. Coordinate and width scaling are now a common 
7853         static constant (probably before morphing into a preference).
7854         
7855         * sheet/checktrans.py: improved error reporting. Made checktrans
7856         count lack of <name xml:lang="code"> as a lack of translation for
7857         language "code" (no, it's not a plot to bring down other
7858         language's scores !)
7859         
7860         * sheet/*.sheet: Ensured all sheets have an encoding="iso-8859-1"
7861         in the header, and have <name xml:lang="fr"> components.
7862         
7863 2001-04-05  Cyrille Chepelov  <chepelov@calixo.net>
7865         * objects/custom/custom_object.c: temporary hack to fix the shape
7866         bounding box reported by Ben A. Hetland. Proper fix isn't .87
7867         material, see bugzilla #52912.
7869 2001-04-05  Lars Clausen  <lrclause@cs.uiuc.edu>
7871         * objects/standard/image.c (get_directory): Now uses
7872         G_SEPARATOR_CHAR_S instead of "/"
7874         * sheets/network.sheet: 
7875         * sheets/Logic.sheet:
7876         * sheets/Flowchart.sheet:
7877         * sheets/Electric.sheet:
7878         * sheets/Circuit.sheet:
7879         * sheets/ER.sheet:
7880         * sheets/Pneumatic.sheet:
7881         * sheets/SDL.sheet:
7882         * sheets/UML.sheet:
7883         * sheets/GRAFCET.sheet:
7884         * sheets/MSE.sheet:
7885         * sheets/chronogram.sheet:
7886         * sheets/civil.sheet:
7887         * sheets/network.sheet:
7888         Danish translations.
7889         
7890         * objects/standard/image.c (get_directory): Changed get_directory
7891         to use g_dirname to find the directory part.
7893 2001-04-05  Cyrille Chepelov  <chepelov@calixo.net>
7895         * sheets/ER.sheet:
7896         * sheets/Electric.sheet:
7897         * sheets/Flowchart.sheet:
7898         * sheets/Logic.sheet:
7899         * sheets/network.sheet: More Dutch translations from Dag Wieers.
7901 2001-04-04  Cyrille Chepelov  <chepelov@calixo.net>
7903         * sheets/checktrans.py: now emits a warning when two descriptions
7904         for a single language code are found.
7906         * Makefile.am:
7907         * sheets/Makefile.am: -translation-reports now also depend on their
7908         checktrans.py
7909         
7910 2001-04-04  Cyrille Chepelov  <chepelov@calixo.net>
7912         * sheets/Circuit.sheet:
7913         * sheets/Contact.sheet:
7914         * sheets/Logic.sheet:
7915         * sheets/chronogram.sheet:
7916         * sheets/sybase.sheet: 
7917         Dutch translations from Dag Wieers <dag@wieers.com>
7919 2001-04-04  Cyrille Chepelov  <chepelov@calixo.net>
7921         * po-checktrans.py: Now shows the detailed counts alongside the
7922         percentage of translations.
7923         
7924 2001-04-03  Cyrille Chepelov  <chepelov@calixo.net>
7926         * Makefile.am:
7927         * po-checktrans (NEW):
7928         * po-checktrans.py (NEW): builds core-translation-report:
7929         percentages of core (gettext) translations done [Not placed into
7930         po/ where that should belong, because of integration fear^Wissues
7931         with gettextize]. 
7933         TO THE KIND ATTENTION OF PACKAGERS: core-translation-report and 
7934         sheets/sheet-translation-report probably ought to be copied on the 
7935         user's /usr/share/doc/dia (or equivalent) directory.
7937         * sheets/Makefile.am: sheet-translation-report now a simple
7938         EXTRA_DIST; make install won't install it by default. 
7939         
7940 2001-04-03  Cyrille Chepelov  <chepelov@calixo.net>
7942         * app/preferences.c: changed the default grid colour to something
7943         less intrusive. 
7945         * shapes/SDL/*.shape:
7946         * sheets/SDL.sheet: renamed all SDL shapes to conform to the
7947         "$LIBRARY - $NAME" convention. THIS REQUIRES FIXING THE EXISTING
7948         DIA FILES (well, for files using SDL), see the mailing list
7949         archive "SDL (ab)using the global shape namespace" for a script to
7950         do this conversion.
7952         * sheets/SDL.sheet: translated into French
7953         * sheets/network.sheet: fixed XML typos. Yay ! 100% :-)
7954         
7955 2001-04-02  Cyrille Chepelov  <chepelov@calixo.net>
7957         * lib/dia_xml.c: made data_point() more paranoid
7959         * sheets/Makefile.am:
7960         * sheets/checktrans (NEW):
7961         * sheets/checktrans.py: Made checktrans handle more gracefully the
7962         absence of python and python-xml packages, and made the error
7963         message more helpful.
7964         
7965 2001-04-01  Lars Clausen  <lrclause@cs.uiuc.edu>
7967         * lib/render_object.c (new_render_object): Made initial handles
7968         behave like on most other objects.
7970         * app/load_save.c (read_objects): Fixed premature free'ing ofr
7971         typestr causing garbage.
7973 2001-04-01  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
7975         * objects/FS/flow-ortho.c: Fixed a crashbug causes by not
7976         accouting for handle ordering through copy and save. (#51479)
7978 2001-03-31  Cyrille Chepelov  <chepelov@calixo.net>
7980         * sheets/Circuit.sheet: Norwegian translation mistagged to German.
7982 2001-03-31  Steffen Macke  <sdteffen@yahoo.com>
7984         * sheets/Circuit.sheet
7985         * sheets/UML.sheet
7986         * sheets/network.sheet: Updated German translations
7987         
7988 2001-03-30  Cyrille Chepelov  <chepelov@calixo.net>
7989         * lib/arrows.[ch]:
7990         * lib/widgets.c:
7991         * app/lineprops_area.c: The return of the revenge of the arrow
7992         heads. Now all types covered by ISO 10303-201 should be covered.
7993         
7994 2001-03-30  Cyrille Chepelov  <chepelov@calixo.net>
7996         * sheets/Flowchart.sheet: translations in probably Hungarian were
7997         a victim of cut-n-paste from the German one. Fixed (hopefully).
7998         * sheet/UML.sheet: translation in probably Norwegian was a victim
7999         of cut-n-paste from the French one. Fixed (hopefully).
8000         * sheets/Logic.sheet: French translation not tagged with
8001         xml:lang="fr".
8002         
8003         * sheets/checktrans.py:
8004         * sheets/Makefile.am: new file, sheet-translation-report, to be
8005         installed along the sheets, show how much of them has been
8006         translated into which language (I wish the result was prettier...)
8008         * po/README: most translators don't read this file, but anyway...
8010         * sheets/.cvsignore:
8011         * objects/network/.cvsignore: the usual negotiation with CVS.
8013 2001-03-30  Cyrille Chepelov  <chepelov@calixo.net>
8015         * sheets/*.sheet: French translations
8017 2001-03-28  Cyrille Chepelov  <chepelov@calixo.net>
8019         Added patch #52363 from Hubert Figuiere <hfiguiere@teaser.fr>:
8021         ** objects/network/network.c:
8022         ** objects/network/wanlink.c:
8023         ** objects/network/pixmaps/wanlink.c:
8024         ** sheets/network.sheet:
8025         ** objects/network/Makefile.am: a better object to use instead of
8026         the older WAN Connection.
8027         
8028         ** lib/geometry.[ch]: rotation matrix functions in geometry.c (derived from gimp)
8030         ** objects/GRAFCET/vector.c: renamed Vector to GRAFCETVector to avoid a
8031         name clash 
8033         * objects/GRAFCET/vector.c: Re-renamed GRAFCETVector into
8034         Arc; kept the C file name (because CVS wouldn't like it), and
8035         still registering the older object name (but advertising the newer
8036         one in sheets/GRAFCET.sheet).   
8038 2001-03-24  Hans Breuer  <hans@breuer.org>
8040         * app/dia.def : some plug-ins (currently only python, xfig) are using 
8041         functions from the dia executable. To get them working these functions 
8042         need to be explicit exported on win32. IMO the much cleaner way would
8043         be to move these functions to libdia, but that would require some
8044         long term restructuring ...
8046         * lib/libdia.def : updated
8048         * plug-ins/makefile.msc : build xfig plug-in
8050 2001-03-24  Hans Breuer  <hans@breuer.org>
8052         * app/diagram.c : g_strdup (dia->filename) because it will be
8053         g_free ()d
8055         * app/display.c : set ddisp->renderer to NULL after destruction.
8056         This may solve or help to identify erroneous access to it after
8057         destruction.
8059         * plug-ins/wmf/wmf.cpp : convert string from utf8 to wchar to
8060         get 'umlauts' working
8062 2001-03-22  Cyrille Chepelov  <chepelov@calixo.net>
8064         * object/chronogram/chronoline_event.c: stupid bug ; rises and falls
8065         were reversed... (look for the patch, and drink a beer to my
8066         stupidity)      
8067         
8068 2001-03-23  Hans Breuer  <hans@breuer.org>
8070         * app/app_procs.c : don't g_error () if the config directory
8071         can't be created (at least not on windoze) because it's quite
8072         common that the user don't read or understand the FAQ ...
8074         * app/cursor.c : use ddisplay_active () instead of active_display
8075         from app/display.c
8077         * app/display.[hc] : made active_display var static and provide
8078         an accessor funtion ddisplay_active_diagram ()
8080         * app/dia-props.c : don't store the active_diagram, but ask
8081         for it everytime it needed.
8083         * lib/properties.h : #include "intl.h"
8085         * lib/makefile.msc : need to take care of inclusion order to
8086         avoid clashes with gtk+2.0's gdk-pixbuf
8088         * objects/makefile.msc : added uml/stereotype.c to build
8090 2001-03-23  Lars Clausen  <lrclause@cs.uiuc.edu>
8092         * **/*.c: Added config.h to the remaining .c files, and changed
8093         all to be <config.h>.
8095 2001-03-22  Steffen Macke <sdteffen@yahoo.com>
8097         * lib/arrows.c
8098         * lib/arrows.h
8099         * lib/widgets.c
8100         * app/lineprops_area.c: added new arrow types with double
8101         heads
8102         
8103 2001-03-20  Steffen Macke <sdteffen@yahoo.com>
8105         * shapes/Civil/civil_gas_bottle.xpm
8106         * shapes/Civil/civil_gas_bottle.shape
8107         * sheets/civil.sheet
8108         * shapes/Civil/Makefile.am: Added gas bottle shape by Arne
8109         Battermann
8110         
8111 2001-03-20  Lars Clausen  <lrclause@cs.uiuc.edu>
8113         * objects/custom/shape_info.c (load_shape_info): 
8114         * objects/custom/shape_info.h: 
8115         * objects/custom/custom_object.c (custom_update_data): 
8116         Better support for text outside the box -- new attributes 'resize'
8117         and 'align' for text entity.  Align not fully supported yet.
8119         * lib/text.c (text_calc_boundingbox): Adding BB for cursor width.
8121 2001-03-20  James Henstridge  <james@daa.com.au>
8123         * app/interface.c (display_data_received_callback): comment out
8124         status message.
8126 2001-03-19  James Henstridge  <james@daa.com.au>
8128         * app/GNOME_Dia.oaf: rename from GNOME_Dia.oafinfo.
8130         * objects/UML/realizes.c: similar here.
8132         * objects/UML/implements.c: similar here.
8134         * objects/UML/component.c: similar here.
8136         * objects/UML/generalization.c: same here.
8138         * objects/UML/dependency.c: allow NULL for ->name and
8139         ->stereotype.  This fixes a number of problems in loading saved
8140         files.
8142         * lib/properties.c: various changes so that NULL string properties
8143         should work.
8145         * objects/standard/line.c (line_update_data):
8146         line->extra.start_long and line->extra.end_long were not being
8147         initialised.  This fixes potential problems with the bounding box
8148         of "Standard - Line" objects.
8150 2001-03-19  Hans Breuer  <hans@breuer.org>
8152         * app/commands.c : added win32 specific code to display a html
8153         file. #include "text.h" for text_delete_all prototype.
8155         * app/dia.ico :
8156         * app/dia.rc : (new) to give Dia win32 an icon
8158         * app/win32print.[ch] : new files to support direct postscript
8159         file printing on win32. Beware: it *requires* a ps-printer!
8161         * app/paginate_psprint.c : disable the signal code for win32 build
8162         and added small specific changes to support win32print.
8164         * app/makefile.msc : added win32print and linking shell32.lib
8166         * lib/libdia.def : updated
8168 2001-03-18  Kevin Breit <battery841@mediaone.net>
8170         * doc/en/dia-C.omf: Added file.  Dia should now list in the Nautilus
8171           Help tabs.
8173 2001-03-17  James Henstridge  <james@daa.com.au>
8175         * app/paginate_psprint.c (diagram_print_ps): add code that traps
8176         SIGPIPEs during printing.  This gets rid of a number of crashes
8177         caused by printing (eg. typing an incorrect print command).
8179         * dia.spec (%install): gzip the manpage.
8181         * lib/beziershape.c (beziershape_save): fix off by one error in
8182         beziershape save code, which was adding an extra segment to the
8183         object on save.
8185         * app/menus.c: add a separator in the gnome version of the help
8186         menu.
8188         * app/app_procs.c (app_init): add a --nosplash argument which
8189         disables the splash screen.
8191         * app/dia_embedd.c (main): don't leave the splash screen open for
8192         embeddable component.
8194         * app/splash.c (app_splash_init): the gtk_widget_show_now() call
8195         didn't seem to be showing the splash screen like expected, so I
8196         have replaced it with some code that calls gtk_main() until the
8197         first exposure of the window.
8199 2001-03-16  James Henstridge  <james@daa.com.au>
8201         * app/Makefile.am (EXTRA_DIST): add extra pixmaps.
8203         * objects/UML/Makefile.am (libuml_objects_la_SOURCES): add
8204         stereotype.h
8206         * lib/Makefile.am (libdia_a_SOURCES): add diavar.h here.
8208         * app/Makefile.am (dia_core_files): remove splash.h from file
8209         list, as it doesn't exist.
8211         * doc/en/Makefile.am (uninstall-local): remove the docdir on
8212         uninstall.
8214         * doc/Makefile.am (uninstall-local): target to remove the C
8215         symlink.
8217         * dia.spec (%files): include the documentation in the package.
8219         * app/menus.c (toolbox_menu_items): add menu item for manual,
8220         which calls help_manual_callback.
8222         * app/commands.c (help_manual_callback): find help file and load
8223         netscape to view it.
8225         * app/commands.h: add prototype for help_manual_callback()
8227         * doc/Makefile.am (helpdir): similar here.
8229         * doc/en/Makefile.am (helpdir): make the helpdir
8230         $(pkgdatadir)/help/en in the non gnome case.
8232         * configure.in (HAVE_GNOME): add conditional.
8234         * doc/en/Makefile.am: handle the graphics in a more general way,
8235         so it is easier for Kevin to add them to the build (just add them
8236         to the GRAPHICS var).
8238         * app/Makefile.am (embed_extra_print_files): make the case of
8239         building without gnome-print support but with bonobo support work.
8240         dia-embedd needs to be include the gnome-print
8242 2001-03-09  Cyrille Chepelov  <chepelov@calixo.net>
8244         * samples/Makefile.am: included all samples in the distribution....
8245         
8246 2001-03-09  Cyrille Chepelov  <chepelov@calixo.net>
8248         * configure.in: removed premature test for DPS. Added -*- m4 -*-
8249         at the beginning. Made HAVE_UNICODE non-default. po/es_ES.po has
8250         vanished, removed it from ALL_LINGUAS.
8252         * lib/charconv.[ch] (NEW): a very small wrapper around
8253         unicode_iconv to convert strings between utf8 and local charset
8254         (actually, ISO-8859-1, though one can do
8255         CFLAGS="-DEFAULT_8BIT_CHARSET=\"ISO-8859-2\"" and the like).
8257         * lib/ps-utf8.[ch] (NEW): A PostScript Unicoder ; a smallish
8258         library to help build Postscript streams which use as many custom
8259         font encodings as necessary to correctly represent all characters
8260         used (testing from users with non-latin1 and/or more than 256
8261         characters in routine use *very* welcome).
8263         * app/Makefile.am, lib/Makefile.am: integrated these into the
8264         build process.
8266         * shapes/Logic/.cvsignore (NEW): .cvsignore
8267         
8268         * app/render_eps.h: forwarded some changes Lars forgot to include.
8269         * app/render_eps.c: turned off ASCII85 and FILTERS, as this
8270         doesn't yet build.
8272 2001-03-08  Kevin Breit <battery841@mediaone.net>
8274         * doc/en/home_network.png: Added file.
8275         * doc/en/line_props.png: Added file.
8276         * doc/en/usage-objects.sgml: Added two graphics to file.
8277         * doc/en/usage-quickstart.sgml: Added one graphic to file.
8279 2001-03-06  Kjartan Maraas  <kmaraas@gnome.org>
8281         * app/grid.h: Place comment around text after #endif.
8282         * lib/bezier_conn.c: #include <string.h>.
8283         * lib/beziershape.c: #include <string.h>.
8284         * lib/connpoint_line.h: Comment after #endif.
8285         * lib/dia_dirs.c: #include <string.h>.
8286         * lib/element.c: Same.
8287         * lib/lazyprops.c: #include <config.h> and "intl.h".
8288         * lib/lazyprops.h: Comment out text after #endif.
8289         * lib/neworth_conn.c: #include <string.h>
8290         * lib/orth_conn.c: Same here.
8291         * lib/poly_conn.c: Here too.
8292         * lib/polyshape.c: And here.
8293         * lib/properties.c: Remove #include "intl.h" from here and add
8294         an array of static strings to work around bug in gettext that
8295         makes it miss strings in a #define body.
8296         * objects/GRAFCET/action_text_draw.h: Comment out text after #endif.
8297         * objects/GRAFCET/boolequation.h: Same here.
8298         * objects/chronogram/chronoline_event.h: Add prototype for
8299         destroy_cle().
8300         
8301 2001-03-05  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
8303         * objects/FS/function.c: 
8304         * objects/FS/flow.c: 
8305         * objects/FS/flow-ortho.c: 
8306         Updated to use properties.
8308 2001-03-03  James Henstridge  <james@daa.com.au>
8310         * lib/lazyprops.c (__propdlg_build_enum): translate the radio
8311         button labels when creating them.
8313 2001-02-28  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
8315         * objects/UML/actor.c
8316         * objects/UML/realizes.c 
8317         * objects/UML/implements.c 
8318         * objects/UML/generalization.c 
8319         * objects/UML/dependency.c 
8320         * objects/UML/constraint.c
8321         Updated to use properties.
8322         
8323         * objects/UML/stereotype.c 
8324         * objects/UML/stereotype.h
8325         Generalized to any kind of bracketting.
8326         
8327 2001-02-28  James Henstridge  <james@daa.com.au>
8329         * app/menus.c: add help entry to the help menu.  Need to get this
8330         working for the non GNOME case as well (maybe put help under
8331         $(datadir)/dia/help for non GNOME?)
8333         * doc/en/topic.dat: add a topic.dat file for GNOME menus.
8335         * doc/en/dia-manual.sgml (legalnotice): add an id attribute to
8336         this element so that we get a meaningful filename in the html
8337         translation.
8339         * doc/Makefile.am, doc/en/Makefile.am: new makefiles to handle the
8340         documentation.
8342         * configure.in (DB2HTML): add a check for the db2html program, and
8343         set an automake conditional if it is found.
8345         * Makefile.am: remove EXTRA_DIST rules that cover doc/ directory,
8346         and descend into doc/ directory while building.
8348         * configure.in (AC_OUTPUT): add doc/ makefiles to output list, now
8349         we need more complex rules for building the docs.
8351 2001-02-25  Hans Breuer  <hans@breuer.org>
8353         * config.h.win32 : some cleanup
8355         * app/prefererences.c : g_scanner_(freeze|thaw)_symbol_table
8356         are deprecated since glib-1.3.2. Sorry needing to use them
8357         contionally, but there is no glib-1.2 for win32
8359         * app/recent_files.c : use g_strescape (params) conditionally
8361         * lib/connection.c : include string.h for memcpy
8363         * lib/geometry.h : added some stuff for compatibility with
8364         msvc, which previously came from included config.h
8366         * lib/libdia.def : updated
8368         * objects/makefile.msc : updated
8370         * objects/GRAFCET/action.c(490) : fixed warning C4700: local variable 
8371         'extra' used without having been initialized
8373         * objects/network/bus.c(658) : initialize 'extra'
8375         * plug-ins/makefile.msc : updated
8377         * plug-ins/cgm/cgm.c :
8378         * plug-ins/pstricks/render_pstricks.c : 
8379         g_free() memory allocated by dia_image_rgb_data(). Plugs possibly 
8380         huge memory leaks.
8382         * plug-ins/python/python.c : use HAVE_DIRENT_H
8384 2001-02-23  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
8386         * lib/connection.c (connection_update_boundingbox): 
8387         Made the BB shrink on right and lower sides, too.
8389 2001-02-23  Kjartan Maraas  <kmaraas@gnome.org>
8391         * */*.c: #incude <config.h> at the top.
8392         * */*.h: Remove include of "config.h" since it should only
8393         be included in .c files and at the very top for things to
8394         work.
8395         * sheets/*.sheet: Updated Norwegian translations.
8396         
8397 2001-02-22  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
8399         * objects/UML/small_package.c: 
8400         * objects/UML/class.c: 
8401         * objects/UML/node.c: 
8402         * objects/UML/usecase.c:
8403         * objects/UML/lifeline.c: 
8404         * objects/UML/message.c:
8405         Various cleanup of properties in particular.  Now much more use of
8406         standard properties.
8408         * lib/diagramdata.c (layer_render): Visualization of bounding
8409         boxes, for debugging purpoises.
8411 2001-02-22  Cyrille Chepelov  <chepelov@calixo.net>
8413         * lib/geometry.h:
8414         * lib/connection.[ch]:
8415         * lib/poly_conn.[ch]:
8416         * lib/polyshape.[ch]:
8417         * lib/bezier_conn.[ch]:
8418         * lib/beziershape.[ch]:
8419         * lib/orth_conn.[ch]:
8420         * lib/neworth_conn.[ch]:
8421         * lib/element.[ch]: Changed a bit the _update_boundingbox()
8422         interface. Now the parent elements have an extra_spacing
8423         structure, which child objects just need to fill, to take care of
8424         most arrow & line width extra space needs.
8426         * objects/**/*.c: updated all objects to the new interface.
8427         While at it, killed all instances of (Object *) downcasts (phew !)
8429         * objects/GRAFCET/condition.c: removed the arrowhead, which IEC848
8430         doesn't speak about.
8431         
8432 2001-02-21  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
8434         * sheets/Logic.sheet: New sheet for Logic symbols.
8436 2001-02-21  James Henstridge  <james@daa.com.au>
8438         * app/menus.c (dia_gnome_menu_get_widget): new function to find a
8439         widget by its path name.  Walks the GnomeUIInfo heirachy rather
8440         than widget tree, compares untranslated label names and ignores
8441         underscores in the labels.
8442         (menus_get_item_from_path): use dia_gnome_menu_get_widget so that
8443         lookups are not dependent on the current locale, as with
8444         gnome_app_find_menu_pos.
8446         * acconfig.h: guard against multiple inclusion of config.h.
8448         * app/select.c (select_style_callback): simply set the selection
8449         style to the value of action.
8451         * app/menus.c (menus_init): simplify the item factory based menu
8452         code a bit.  It looks like it was using some code cut and pasted
8453         from the gimp, which looked a bit unnecessary.  Things work fine
8454         without it.
8455         (selectmenu): set the action to the type of selection mode
8456         requested.
8457         (display_menu_items): use the symbolic enumeration values for the
8458         action field.
8460         * app/plugin-manager.c: 
8461         * app/plugin-manager.h: 
8462         * app/filedlg.c:
8463         * app/filedlg.h: 
8464         * app/select.c:
8465         * app/select.h: change prototypes.
8467         * app/commands.c: update all callback prototypes, and get rid of
8468         some #ifdef GNOME's.
8470         * app/commands.h: change function prototypes.
8472         * app/dia_embedd.c (save_fn):
8473         s/ex_Bonobo_IOError/ex_BonoboStorage_IOError/
8475         * app/menus.c (menus_init): for gnome menus, use
8476         gnome_app_fill_menu_custom and pass in a GnomeUIBuilderData
8477         structure that proxies the callbacks to have the same signature as
8478         GtkItemFactory type 1 callbacks.
8479         (menus_init): for GTK menus, change from callback type 2 to type
8480         1.
8481         (display_menu_items): add back tearoffs.  I don't know who removed
8482         these for the gtk menu case.
8484 2001-02-20  Kevin Breit <battery841@mediaone.net>
8486         * doc/en/usage-objects-special.sgml: Fixed a few of the special
8487         object descriptions.  More to come in the next few days.
8489 2001-02-20  Lars Clausen  <lrclause@cs.uiuc.edu>
8491         * app/render_eps.c: Fixed for internationalized floating point
8492         output. 
8494         * objects/UML/note.c: Fixed properties -- was missing
8495         Get/ApplyPropertiesFunc.  Also improved update to recalculate text
8496         position. 
8498 2001-02-19  Lars Clausen  <lrclause@cs.uiuc.edu>
8500         * plug-ins/xfig/xfig-import.c: 
8501         File added importing xfig files.  Still very rough, but good
8502         enough to let others hack on it.
8504 2001-02-07  Cyrille Chepelov  <chepelov@calixo.net>
8506         * app/interface.c:
8507         * app/linewidth_area.c:
8508         * lib/lazyprops.c:
8509         * lib/properties.c:
8510         * lib/widgets.c:
8511         * objects/ER/attribute.c:
8512         * objects/ER/entity.c:
8513         * objects/ER/relationship.c:
8514         * objects/custom/custom_object.c:
8515         * objects/flowchart/box.c:
8516         * objects/flowchart/diamond.c:
8517         * objects/flowchart/ellipse.c:
8518         * objects/flowchart/parallelogram.c:
8519         * objects/standard/box.c:
8520         * objects/standard/textobj.c: per Vlad Harchev's request, made
8521         page sizes of gtk_adjustments different than their step sizes.
8522         When sensible values of page size weren't found (overwhelming
8523         majority of cases), page sizes were set to 10.0 * respective step
8524         size.   
8526 2001-02-07  Lars Clausen  <lrclause@cs.uiuc.edu>
8528         * objects/network/hub.c: 
8529         Patch from Hubert Figuiere applied, adding connection points.
8531 2001-02-02  James Henstridge  <james@daa.com.au>
8533         * app/display.c (new_display): set update id to 0 here.
8534         (ddisplay_update_handler): rename from ddisplay_flush, and set
8535         update_id to 0 at end of processing.
8536         (ddisplay_flush): new implementation that simply sets an idle
8537         handler to perform the actual drawing.
8539         * app/display.h: add structure member to hold the redraw idle
8540         handler id.
8542 2001-01-31  Lars Clausen  <lrclause@cs.uiuc.edu>
8544         * objects/standard/ellipse.c (ellipse_copy): 
8545         * objects/standard/zigzagline.c (zigzagline_copy): 
8546         Fix of copying provided by Martin Hawlisch.
8548 2001-01-23  Kevin Breit <battery841@mediaone.net>
8550         * doc/en/graphics/: added directory
8552         * doc/en/graphics/greendots.png: added file
8554         * doc/en/*sgml: made minor and some major changes to prepare for 1.4
8555         release.
8557 2001-01-23  Kevin Breit <battery841@mediaone.net>
8559         * doc/en/*sgml: made some grammar changes and fixed a few markup bugs.
8560                         thanks to John Fleck!
8562 2001-01-21  Kevin Breit <battery841@mediaone.net>
8564         * doc/en/*sgml: made just minor changes to a few lines; nothing major.
8566 2001-01-12  Michael Meeks  <michael@helixcode.com>
8568         * app/dia_embedd.c (init_server_factory): do a bonobo_activate
8569         so our POA gets setup properly.
8571         * app/paginate_gnomeprint.c (paginate_gnomeprint): g_free
8572         things we g_malloc.
8574         * configure.in: Use bonobox_print.
8576         * app/dia_embedd.c (embeddable_factory): add print interface.
8577         (object_print): impl.
8579 2001-01-11  Michael Meeks  <michael@helixcode.com>
8581         * app/dia_embedd.c (embeddable_factory): aggregate PersistFile.
8582         (load_fn, save_fn): impl.
8583         (view_factory): hide modified status bar, & use activate fn.
8584         (refresh_view): force redraws of the views.
8585         (view_show_hide): split from
8586         (dia_view_activate): here.
8588         * app/diagram.c (diagram_load_into): split from diagram_load.
8589         (new_diagram): simplify bu splittin stuff into
8590         (diagram_init): here.
8592 2001-01-10  Steffen Macke <sdteffen@yahoo.com>
8594         * shapes/jigsaw/*.shape: replaced #000000 with foreground
8595         and #ffffff with background
8596         
8597 2001-01-08  Steffen Macke <sdteffen@yahoo.com>
8599         *configure.in: GTK+-build was broken due to missing
8600         have_bonobo=no
8601         
8602 2001-01-06  Michael Meeks  <michael@helixcode.com>
8604         * app/dia_embedd.c (main): add running context support.
8605         (dia_embeddable_destroy): remove old running object counting.
8606         (embeddable_factory): ditto.
8607         (view_factory): comment out menu path hiding.
8609         * lib/sheet.c (load_register_sheet): use free to free
8610         stuff from libxml not g_free.
8612         * acconfig.h: kill cover for USE_BONOBOX and USE_OAF
8614         * configure.in: remove USE_OAF checks, check for a precice
8615         Bonobo version >= 0.31, revamp bits.
8617         * app/dia_embedd.c (init_server_factory): upd.
8618         (init_dia_factory): remove OAF conditionals, everything uses
8619         oaf now.
8621         * app/GNOME_Dia.oafinfo: rename OAFIIDs
8623         * app/Makefile.am: remove ancient gnorba code.
8624         rename dia.oafinfo to GNOME_Dia.oafinfo
8626 2001-01-07  Hans Breuer <Hans@Breuer.Org>
8628         * config.h.win32
8629         * install.win32
8630         * readme.win32 : some more files required or useful to build 
8631         Dia on win32
8633         * plug-ins/wmf/wmf.cpp : fixed open issues like fill_arc and
8634         fill_bezier implementation, boundary drawing in fill mode, etc.
8635         Next one complaining gets the source, uncommented ...
8637         * shapes/network/router-symbol.xpm 
8638         * shapes/network/switch-atm-symbol.xpm 
8639         * shapes/network/switch-symbol.xpm : removed "-*- picture -*- "
8640         from /* XPM */ header, cause it stopped Dia/gdk_pixbuf to detect 
8641         the files as XPMs. Maybe the X versions of these functions are more
8642         tolerant ...
8644 2001-01-06  Steffen Macke <sdteffen@yahoo.com>
8646         * plug-ins/python/Makefile.am: added libart path
8648         * plug-ins/python/python.c: added dirent.h
8650         * configure.in: added es_ES and pt_BR to ALL_LINGUAS
8651         
8652 2001-01-06  Hans Breuer <Hans@Breuer.Org>
8654         * objects/uml/actor.c
8655         * objects/uml/branch.c
8656         * objects/uml/class.c
8657         * objects/uml/classicon.c
8658         * objects/uml/component.c
8659         * objects/uml/large_package.c
8660         * objects/uml/node.c
8661         * objects/uml/note.c
8662         * objects/uml/object.c
8663         * objects/uml/small_package.c
8664         * objects/uml/state.c
8665         * objects/uml/usecase.c : started to implement the generic property
8666         interface for the uml objects. Would appreciate some help on how
8667         to implement properties which are list of properties themselves,
8668         e.g. member functions and their parameters of UMLClass.
8670 2001-01-06  Hans Breuer <Hans@Breuer.Org>
8672         * plug-ins/python/diamodule.c : finally ported to win32.
8673         Added new objects and implemented register_export function.
8675         * plug-ins/python/pydia-object.h
8676         * plug-ins/python/pydia-display.c
8677         * plug-ins/python/pydia-handle.c
8678         PyObject_HEAD_INIT needs some tweakink on win32. Done in
8679         pydia-object.h; others files simply using it.
8681         * plug-ins/python/pydia-layer.c : reflect 
8682         layer_find_closest_connection(_)point renaming
8684         * plug-ins/python/pydia-object.c : add property properties.
8685         Also change bounding_box to DiaRectangle.
8687         * plug-ins/python/python.c : extended error reporting; use
8688         all *.py files from Dia's plug-in dir instead of hardcoded
8689         test.py. This sollution should be fine with Win32, but on
8690         Unix it may need some tweaking (dunno) ...
8692         * plug-ins/python/export-object.py
8693         * plug-ins/python/export-render.py : test and documentation 
8694         implementations for export filter implementations in Python
8696         * plug-ins/python/pydia-color.[hc]
8697         * plug-ins/python/pydia-diagramdata.[hc]
8698         * plug-ins/python/pydia-error.[hc]
8699         * plug-ins/python/pydia-export.[hc]
8700         * plug-ins/python/pydia-font.[hc]
8701         * plug-ins/python/pydia-geometry.[hc]
8702         * plug-ins/python/pydia-image.[hc]
8703         * plug-ins/python/pydia-properties.[hc]
8704         * plug-ins/python/pydia-property.c
8705         * plug-ins/python/pydia-render.c : new objects in new files 
8707         * plug-ins/python/makefile.am : added new files but can't test it
8709         * plug-ins/python/pydia.def
8710         * plug-ins/python/makefile.msc : for win32 build
8712         * plug-ins/cgm/cgm.c
8713         * plug-ins/dxf/dxf-import.c
8714         * plug-ins/dxf/dxf-export.c
8715         * plug-ins/hpgl/hpgl.c : reflect export API change
8717         * plug-ins/shape/shape-export.c : reflect export API change
8718         and check for libart (better the availibility of a png exporter) 
8719         at run-time instead of compile-time. 
8721 2001-01-06  Steffen Macke <sdteffen@yahoo.com>
8723         * app/recent_files.h was missing from Hans's commit
8725         * plug-ins/shape/shape_export.c: shape export was broken
8726         due to interface changes
8727         
8728 2001-01-05  Hans Breuer <Hans@Breuer.Org>
8730         Applied Steffen's recent file list patch :
8731         * app/Makefile.am : added recent_files.[hc]
8732         * app/diagram.c : add files to recent file list
8733         * app/menus.c : add recent file menu
8734         * app/app_procs.c : changed initialization order to
8735         make recent file list work with command line processing.
8737         The Filter export()/import() functions have got an additional 
8738         parameter to allow multiple filters via one C callback (required
8739         for Python bindings)
8741         * app/commands.[hc] : corrected the signature for gtk menu callback
8742         functions, which actually use the second or third parameter. This
8743         is the absolute minimum change to make these functions/menu entries
8744         work again. Using the other possible gtk menu callback signature
8745         would have required one more function to change. (see mailing list
8746         thread "Objects/Align/Equal Distance" for more information.
8748         * app/disp_callbacks.c : applied Gustavo J.A.M. Carneiro's
8749         zoom-combo focus patch
8751         * app/display.c
8752         * app/interface.c : wrapped the Zoom Combo code into 
8753         #ifndef WITHOUT_ZOOM_COMBO because IHMO it isn't an useabilty
8754         improvement but cluttering the user interface. Also it wasn't
8755         compiling on Win32 anyway. The win32 version does define 
8756         WITHOUT_ZOOM_COMBO to keep the old look. 
8757         There are plans to use the statusbar to display size and placement
8758         of selected objects, whereas the Zoom Combo would need to get out
8759         of the way as well.
8761         Added "Save Changes?" to diagram close dialog. Hopefuly the
8762         Yes/No/Cancel option isn't too much windoze like. IHMO this is
8763         an useability improvement.
8765         * app/export_png.c
8766         * app/filedlg.c
8767         * app/load_save.c
8768         * app/layer_dialog.c
8769         * app/paginate_psprint.c
8770         * app/render_eps.c
8771         - reflect signature changing of filter->export function
8772         - replaced '/' with G_DIR_SEPARARTOR where appropriate
8774         * app/diaunitspinner.c
8775         * app/render_libart.c
8776         added misssing headers like <string.h>
8778         * app/object_ops.c : fixed copy&paste bug in dialog string
8780         * app/splash.c : gdk_widget_show_now () does not ensure actual
8781         drawing of the splash screen, at least not on win32. Reuse the
8782         previous implementation with gtk_main_iteration() again.
8784         * */makefile.msc : make use of the build module (available in
8785         gnome-cvs/build. Updated for other source changes
8787         * lib/filter.h : added an user_data pointer to <ex/im>port()
8788         function signature and Dia<Im/Ex>portFilter to allow different
8789         filters to reuse the same callback function
8791         * lib/font.c : #include <string.h>
8793         * lib/orth_conn.c 
8794         * lib/poly_conn.c 
8795         * lib/poly_shape.c 
8796         * lib/neworth_conn.c
8797         * lib/text.c : don't mix allocator functions (g_)realloc, free, ...
8799         * */*.def : export function definition files required by win32 build
8801         * objects/custom/custom.c : #include <string.h>
8803         * plug-ins/pstricks/render_pstricks.c
8804         * plug-ins/shape/shape_export.c
8805         * plug-ins/svg/render_svg.c
8806         reflect changes to filter export function signature
8808         * plug-ins/wmf/wmf.cpp : fixed indent and scaling. It now should
8809         mostly work as expected
8810         * plug-ins/wmf/wmf_gdi.[hc] : Updated comment. Still not used
8811         to build the wmf plug-in because on the one hand the GDI emulation 
8812         isn't finished and on the other hand it isn't required when building
8813         for win32. Is there anybody out there, who wants to save WMF on non
8814         windoze platforms ?
8816         * plug-ins/wpg/wpg.cpp : fixed scaling to take axis dependent
8817         offset into account.
8819 2001-01-02  Steffen Macke <sdteffen@yahoo.com>
8821         * app/Makefile.am: added missing plug-ins to run_dia.sh
8823         * lib/paper.c: added paper sizes A0, A1, A2
8825         * objects/UML/class.c
8826         objects/UML/class.h
8827         objects/UML/class_dialog.c: added support for colored UML
8828         classes
8829         
8830 2000-12-30  Kevin Breit <battery841@mediaone.net>
8832         * doc/en/usage-customization.sgml: added more content
8834 2000-12-24  Kevin Breit <battery841@mediaone.net>
8836         * doc/en/usage-layers.sgml: added file, contributed by Remypsb
8837         <remy.viard@laposte.net>
8839 2000-12-24  Steffen Macke <sdteffen@yahoo.com>
8841         * added limiting lines to Civil Engineering sheet,
8842         fixed vertical pump icon
8843         
8844 2000-12-20  Steffen Macke <sdteffen@yahoo.com>
8846         * updated/additional Civil Engineering shapes: better icons,
8847         shapes use foreground/background colors now and are filled
8848         
8849 2000-12-03  Kevin Breit  <battery841@mediaone.net>
8851         * doc/en/dia-manual.sgml Integrated a few diffs.  New section should be
8852         the selection <sect1>
8854 2000-11-29  Fredrik Hallenberg  <hallon@lysator.liu.se>
8856         * app/load_save.c (diagram_data_save): avoid using obsoleted
8857         libxml calls (only matters when compiling with libxml2)
8859 2000-11-25  James Henstridge  <james@daa.com.au>
8861         * app/disp_callbacks.c (ddisplay_drop_object): add a function to
8862         handle the tool drops on the canvas.
8864         * app/interface.c (display_data_received_callback): do the check
8865         to make sure that the drag is from a local toolbox here as well.
8867         * app/interface.c (create_tools): unref the pixmap/mask after
8868         creating the GtkPixmap.
8869         (tool_setup_drag_source): function to set up a drag source for
8870         create object tool buttons.
8871         (create_tools): setup drag source for CREATE_OBJECT_TOOL's.
8872         (fill_sheet_wbox): same here.
8873         (create_display_shell): set up the display canvas as a drag
8874         destination.
8875         (display_drop_callback, display_data_received_callback): functions
8876         to handle drops of tool buttons.
8878         * app/menus.c (menus_init): don't use gnome_popup_menu_new().  It
8879         does weird shit to the user_data pointer for a menu item.  Object
8880         alignment should work again now.
8882         * app/splash.c (get_logo_pixmap): don't unref the bitmap if it is
8883         NULL, and mark this function static.
8884         (app_splash_init): use gtk_widget_show_now() instead of the
8885         gtk_main_iteration loop.
8886         (app_splash_init): connecting gtk_widget_destroy to the destroy
8887         signal of a widget seems pretty useless.
8889 2000-11-23  Kevin Breit <battery841@users.sourceforge.net>
8891         * doc/en/dia-manual.sgml:
8892                 Added sect1 for advanced object types.  Starting development
8893                 on that part.
8895 2000-11-18  Kevin Breit <battery841@mediaone.net>
8897         * doc/en/dia-manual.sgml:
8898                 Stupid spelling fixes.
8900 2000-11-18  Kevin Breit <battery841@mediaone.net>
8902         * doc/en/dia-manual.sgml:
8903                 Just some small changes I made.  Props to Greg LeBlanc on the
8904                 recommendations.
8906 2000-11-17  Alexander Larsson  <alla@lysator.liu.se>
8908         * app/display.c:
8909         (ddisplay_add_display_area): Clip input rectangle to
8910         the visible part of the display.
8911         (ddisplay_scroll): Optimization, don't scroll and
8912         redraw if moving to the same position as before.
8914         * app/render_libart.c (renderer_libart_copy_to_window):
8915         Removed sanity check. Now moved to ddisplay_add_display_area().
8917         * lib/diavar.h:
8918         Added return at end of file.
8919         
8920 2000-11-13 Kevin Breit <battery841@mypad.com>
8921         * doc/en/dia-manual.sgml
8922                 Commited manual changes from Henry House <hajhouse@houseag.com>
8924 2000-10-21 Hans Breuer <Hans@Breuer.Org>
8925         * lib/beziershape.c :
8926                 The previous code was accessing unowned memory due to IHMO
8927                 wrong index calculation. Now it appears to be fixed.
8928                 *Please Review!*
8930         * lib/makefile.msc
8931         * plug-ins/makefile.msc
8932         * objects/makefile.msc
8933         * app/makefile.msc: (new files)
8934                 Makefiles for Dia on Win32, Micro$oft VC only.
8936         * plug-ins/pstricks/render_pstricks.c
8937         * plug-ins/dxf/dxf-import.c
8938         * plug-ins/shape/shape-export.c
8939         * plug-ins/svg/render_svg.c
8940         * app/commands.c
8941         * app/filedlg.c
8942         * app/preferences.c
8943         * app/render_eps.c
8944         * lib/sheet.c
8945         * lib/plug-ins.c
8946         * objects/custom/custom.c
8947         * objects/standard/image.c
8948                 portability (not only win32): use HAVE_UNISTD_H, HAVE_DIRENT_H 
8949                 where   appropriate, add missing prototypes like <string.h>
8951         * plug-ins/wmf/wmf_gdi.cpp
8952         * plug-ins/wmf/wmf_gdi.h:
8953                 start of wmf write functions for non Win32 platform. Not 
8954                 finished yet. The other way to get it working maybe to
8955                 link the plug-in against wine libs.
8956                 
8957         * plug-ins/wpg/wpg.c : add missing brace
8959         * app/load_save.c :
8960                 Handling for unknown objects at load time. Previously Dia
8961                 was crashing, if you try to load a file referencing objects
8962                 whiches plug-ins aren't installed/available. Now it spits out 
8963                 a warning and ignores the unknown objects.
8965         * app/interface.c
8966                 toolbox DND support for files like The Gimp does it.
8968         * app/main.c
8969         * app/app_procs.h
8970                 Simple splash screen support and usage.
8972         * app/app_procs.c
8973                 Splash screen, portability fixes, dont' g_error if there is
8974                 g_get_homedir return NULL. This may remove the one and only
8975                 FAQ for Win32.
8977         * app/menus.c :
8978                 Make it compile without ENABLE_NLS
8980         * app/render_libart.c :
8981                 Sanity check to avoid calling libart with wrong window coordinates.
8982                 They come from the update handler. Direct Gdk is dealing nicely
8983                 with coordinates out of range, libart does access un-owned memory
8984                 in this case, mostly causing crashes.
8986         * app/winmain.c: (new file) Export the Win32 Gui version of the
8987                 main function. This file is only required for Windoze.
8989         * app/splash.c: (new file) splash screen implementation
8991         * lib/color.h
8992         * lib/font.h
8993         * lib/diavar.h: (new file)
8994                 moved special variable export code to diavar.h, because it is
8995                 needed in color.h and font.h
8997         * lib/paper.c :
8998                 M$VC cann't export inlined functions. Quick hack to let it
8999                 link again. Probably the glib mechanics should be used here?
9001         * objects/UML/lifeline.c : initialize var before usage
9003         * objects/GRAFCET/step.c : removed unused var
9005 2000-10-14  James Henstridge  <james@daa.com.au>
9007         * app/render_gnomeprint.c (draw_image): change code so images
9008         don't get flipped when printing.
9010         * app/paginate_gnomeprint.c (diagram_print_gnome): check to make
9011         sure that the return value of
9012         gnome_print_context_new_with_paper_size is not NULL.
9014         * app/render_gnomeprint.c (draw_arc): add code to convert arcs
9015         into a series of bezier segments.
9016         (fill_arc): similar code to handle filled arc segments.
9018 2000-10-12  Fredrik Hallenberg  <hallon@lysator.liu.se>
9020         * app/app_procs.c
9021         * app/commands.c
9022         * app/dia-props.c
9023         * app/diagram.c
9024         * app/diagram.h
9025         * app/disp_callbacks.c
9026         * app/display.c
9027         * app/linewidth_area.c
9028         * app/paginate_psprint.c
9029         * app/preferences.c
9030         * app/undo.c
9031         * app/font.c
9032         * app/message.c
9033         * app/neworth_conn.c
9034         * app/orth_conn.c
9035         * objects/standard/box.c: various small changes to get rid of 
9036         annoying warnings (eg faulty prototypes and unused variables)
9038         * app/disp_callbacks.c
9039         * app/cursor.h
9040         * app/magnify.c
9041         * app/magnify.h: update magnify tool icon when pressing/releasing
9042         shift. I will try to make something more general so that similar
9043         things can be used by other tools.
9045         * shapes/SDL/inout.shape
9046         * shapes/SDL/return.shape: fixed some typos
9048 2000-10-09  James Henstridge  <james@daa.com.au>
9050         * objects/custom/shape_info.c (parse_path): apply patch from
9051         Robert Young <robertdotyoung@dsto.defence.gov.au> to fix bug
9052         #25221
9054 2000-10-08  James Henstridge  <james@daa.com.au>
9056         * objects/standard/image.c (image_set_props): if the file could not
9057         be loaded, show the broken image icon.
9059         * plug-ins/Makefile.am (SUBDIRS): add shape to the subdirs list.
9061         * plug-ins/shape/*: the shape export plugin by Steffen Macke.
9063         * app/interface.c (fill_sheet_wbox): use gdk-pixbuf to load the
9064         object icon when loading from a file.  This allows you to have PNG
9065         icon files for shapes.
9067 2000-10-07  James Henstridge  <james@daa.com.au>
9069         * app/Makefile.am (dia_LDADD): remove GDK_IMLIB_LIBS reference.
9071         * lib/Makefile.am, app/Makefile.am (INCLUDES): remove
9072         GDK_IMLIB_CFLAGS reference.
9074         * app/commands.c (help_about_callback): remove imlib code.
9076         * lib/dia_image.c: only include the pixbuf version of the image
9077         routines.
9079         * acconfig.h: remove the HAVE_GDK_PIXBUF flag from here.
9081         * configure.in (CPPFLAGS): remove the check for imlib, as we now
9082         require gdk-pixbuf.
9084         * plug-ins/pstricks/render_pstricks.c (new_pstricks_renderer):
9085         conditionally define \setfont as well.
9087 2000-10-05  James Henstridge  <james@daa.com.au>
9089         * plug-ins/pstricks/render_pstricks.c (new_pstricks_renderer): fix
9090         preamble so that we define \setlinejoinmode and \setlinecaps
9091         commands conditionally on them being undefined.  This way, the
9092         pstricks output files should work without modification, and will
9093         support the commands when they are implemented in pstricks.
9095 2000-10-05  Szabolcs Ban  <shooby@gnome.hu>
9097         * dia.desktop: added hungarian translations to dia.desktop
9099 2000-10-04  James Henstridge  <james@daa.com.au>
9101         * sheets/UML.sheet: fix typo.
9103         * objects/custom/shape_info.c: use strtod instead of g_strtod.
9104         (parse_path): actually call setlocale around strtod calls.
9106         * lib/dia_xml.c: use strtod rather than g_strtod.  We wrap each
9107         call in setlocale(LC_NUMERIC, "C"), so there is no reason to call
9108         the g_strtod wrapper.
9110         * shapes/SDL/: add SDL shapes from Rubens Ramos
9111         <rubens_ramos@yahoo.com>
9113         * acinclude.m4 (DIA_CHECK_CFLAG): fix up macro.
9115         * sheets/Makefile.am (SHEETS): add SDL.sheet to list.
9117         * shapes/MSE/: add Mobile Subscriber Equipment shapes from
9118         W. Michael Petullo <mike@flyn.org>.
9120         * sheets/Makefile.am (SHEETS): add civil.sheet (which got missed
9121         from the 0.86 tarball) and jigsaw.sheet.
9123         * configure.in: add shapes/jigsaw/Makefile to list of generated files.
9125         * shapes/jigsaw/: jigsaw shapes from Martin Hawlisch.
9127         * shapes/network/: add network-additional shapes here.
9129         * sheets/network.sheet: add the network-additional shapes from
9130         Martin Hawlisch <Martin.Hawlisch@bflow.com> to the main network
9131         sheet.
9133 2000-09-30  Fredrik Hallenberg  <hallon@lysator.liu.se>
9135         * configure.in: Updated ALL_LINGUAS
9137         * po/nl.po: Removed newline from translation
9139 2000-09-17  Asbjorn Pettersen  <asbjornP@dualog.no>
9141         * app/commands.c (help_about_callback): Use G_DIR_SEPARATOR_S in 
9142         logo filename generation. 
9144         * lib/dia_dirs.c (dia_get_data_directory): Handle empty subdir better.
9145         Avoiding "//dia_logo.png".
9147 2000-09-16  Asbjorn Pettersen  <asbjornP@dualog.no>
9149         * app/filedlg.c: add include <sys/types.h> to
9150         remove warning. (OS/2)
9152 2000-09-13  Cyrille Chepelov <chepelov@calixo.net>
9154         * objects/chronogram/chronoline_event.c (reparse_clevent):
9155         the __checksum routine was simply bogus. Redone it in a slightly
9156         saner way (reported by Michael Farr <mfarr@cs.latrobe.edu.au>).
9158 2000-09-10  Asbjorn Pettersen  <asbjornP@dualog.no>
9160         * app/create_object.c (create_object_button_press): 
9161         * app/modify_tool.c (click_select_object): 
9162         * lib/object.h: select renamed to selectf to prevent
9163         compiler problems with function select().  OS/2 version.
9165 2000-09-08  Karsten Weiss  <knweiss@gmx.de>
9167         * po/de.po: Updated.
9169 2000-09-07  Karsten Weiss  <knweiss@gmx.de>
9171         * dia.desktop: Added German translation
9172         * app/menus.c: "Diagram Propeties..." -> "Diagram Properties..."
9174 2000-08-29  Manuel de Vega Barreiro <barreiro@arrakis.es>
9176         * configure.in (ALL_LINGUAS): added "es"
9178 2000-08-28  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
9180         * app/magnify.c:
9181         * app/cursor.h:
9182         * app/cursor.c:
9183         * app/scroll_tool.c:
9184         Standardized cursor function get_cursor().  Magnify now has
9185         looking-glass cursor with + and -.
9187         * app/create_object.c (create_object_button_press): 
9188         Newly created connections now snap to connection points even when
9189         off the grid. 
9191 2000-08-17  Daniel Egger  <egger@suse.de>
9193         * app/menus.c: #ifdef'ed some code for the none GNOME
9194         case.
9195         * app/dia_embedd.c: Changed obvious hackery. Can anyone
9196         please have a look at the GNOME UI menu creation? The
9197         gnome-app-helper code is ages old and plainly broken!
9199 2000-08-15  Daniel Egger  <egger@suse.de>
9201         * app/commands.c:
9202         * app/commands.h:
9203         * app/diagram.c:
9204         * app/display.c:
9205         * app/menus.c:
9206         * app/select.c: First big patch to get the menus
9207         working again in the international version. Copied
9208         some code written by Sven and me from GIMP and
9209         thus implemented automatic tearoffmenu creation and
9210         proper translation. I also removed that pseudo
9211         radiomenu hack and cleaned up several translation
9212         hacks which have never really worked. All in all
9213         this is part I of the big menu patch. Enjoy and tell
9214         me if you detect any problems.
9216 2000-08-14  Daniel Egger  <egger@suse.de>
9218         * sheets/UML.sheet: Changed one German translation as
9219         suggested by Heribert Schuetz <hs@heribert-schuetz.de>.
9221 2000-08-10  Fredrik Hallenberg  <hallon@lysator.liu.se>
9223         * app/diapagelayout.c:
9224         * lib/diagramdata.c:
9225         * lib/diagramdata.h:
9226         * lib/Makefile.am:
9227         * lib/paper.c:
9228         * lib/paper.h: honour PAPERCONF env variable and /etc/papersize when
9229         selecting paper size for a new diagram. TODO: Use libpaper if 
9230         available and use gnome_paper-stuff if using GNOME.
9232         * sheets/Electric.sheet: fixed typo.
9233         
9234 2000-08-08  James Henstridge  <james@daa.com.au>
9236         * po/README: added a readme file to tell translators to translate
9237         the .sheet files as well.
9239         * app/commands.c (help_about_callback): fix small bug where we tried
9240         to gdk_bitmap_unref() the mask for the about box image, even though
9241         it was NULL.  Now check for a NULL mask.
9243 2000-08-07  Daniel Egger  <egger@suse.de>
9245         * sheets/*.sheet: Added translations for the name
9246         in the toolbar tab. Brushed up some descriptions 
9247         and some translations a bit.
9249 2000-08-06  James Henstridge  <james@daa.com.au>
9251         * plug-ins/svg/render_svg.c (new_svg_renderer): update public
9252         identifier and dtd url for SVG output.
9253         (new_svg_renderer): fix the output of the viewBox output.  The
9254         second two numbers are the width and height -- not the right
9255         and bottom sides of the box.
9257         * shapes/*/*.shape: update svg namespace URI.
9259         * objects/custom/shape_info.c (load_shape_info): change the
9260         namespace URI for custom shapes yet again to match the Candidate
9261         Recommedation.  It looks like this one will probably be the final
9262         one.
9264         * app/display.c (new_display): remove the code that sets ic and
9265         ic_attr members to NULL, as one of the previous function calls
9266         causes the display to be realised.  This means that the ic gets
9267         lost.  Thanks to Yukihiro Nakai <ynakai@redhat.com> for finding
9268         this one.
9270 2000-08-06  James Henstridge  <james@daa.com.au>
9272         * shapes/Makefile.am (SUBDIRS): add Civil back to list.
9274         * NEWS: fixed date in NEWS file, as I will release today.
9276         * README: updated the README a little.  Added note that Dia is now
9277         a GNU program.
9279         * dia.spec: fix up spec file.
9281         * plug-ins/wpg/wpg.c: changed DIAG_NOTE stuff here as well.
9283         * plug-ins/hpgl/hpgl.c: change Hans's DIAG_NOTE stuff so that we don't
9284         get heaps of warnings when you turn off debugging.
9285         Also made a few other warning fixes.
9287 2000-08-02  James Henstridge  <james@daa.com.au>
9289         * plug-ins/svg/Makefile.am (INCLUDES): add XML_CFLAGS to INCLUDES.
9291         * configure.in: update version number.
9293 2000-08-01  James Henstridge  <james@daa.com.au>
9295         * app/commands.c (help_about_callback): add Hans to about dialog.
9297         * doc/shape.dtd: dtd for shape file format.
9299         * doc/custom-shapes: update doc file about creating custom shapes.
9301         * shapes/*/*.shape: change namespace URI for the SVG portion to the
9302         one for the latest draft.
9304         * shapes/*/*.shape: fix up rect definitions.
9306         * objects/custom/shape_info.c (load_shape_info): recognise newer
9307         namespace tag for SVG.
9308         (parse_svg_node): the rect element should take attributes x, y, width
9309         and height -- not x1,y1,x2,y2.
9311         * plug-ins/svg/render_svg.c (new_svg_renderer): updated doctype
9312         output to use the newest draft DTD.
9314         * plug-ins/svg/svg.c: initialisation code for plugin.
9316         * plug-ins/svg/render_svg.c: move svg export code to a plugin.
9318         * plug-ins/svg/Makefile.am: makefile for svg plugin.
9320         * app/app_procs.c (internal_plugin_init): don't register the svg
9321         export filter here.
9323         * app/Makefile.am (dia_core_files): don't compile in render_svg.[ch]
9325 2000-07-31  James Henstridge  <james@daa.com.au>
9327         * objects/standard/textobj.c (textobj_get_defaults): 
9328         * objects/standard/polygon.c (polygon_get_defaults): 
9329         * objects/standard/image.c (image_get_defaults): 
9330         * objects/standard/ellipse.c (ellipse_get_defaults): 
9331         * objects/standard/box.c (box_get_defaults): 
9332         * objects/standard/beziergon.c (beziergon_get_defaults): 
9333         * objects/flowchart/parallelogram.c (pgram_get_defaults): 
9334         * objects/flowchart/ellipse.c (ellipse_get_defaults): 
9335         * objects/flowchart/diamond.c (diamond_get_defaults): 
9336         * objects/flowchart/box.c (box_get_defaults): 
9337         * objects/custom/custom_object.c (custom_get_defaults): 
9338         * objects/FS/flow.c (flow_get_defaults): 
9339         * objects/FS/flow-poly.c (flow_get_defaults): 
9340         * objects/FS/flow-ortho.c (orthflow_get_defaults): ref and sink the
9341         defaults widget.
9343         * app/defaults.c (defaults_show): don't keep on ref'ing the defaults
9344         widgets for various object types.
9345         (create_dialog): ref and sink the no_defaults_dialog.
9347         * app/preferences.c (prefs_create_dialog): change
9348         gtk_container_border_width call to gtk_container_set_border_width.
9350 2000-07-29  James Henstridge  <james@daa.com.au>
9352         * app/commands.c (view_aa_callback): show a warning dialog if
9353         you start AA mode.
9355         * app/interface.c (fill_sheet_menu): don't add a menu item for
9356         empty sheets.
9358 2000-07-26  James Henstridge  <james@daa.com.au>
9360         * plug-ins/dxf/dxf-export.c: updates from Steffen to fix bug #18677
9362         * app/menus.c: remove edit grid menu item.
9364         * app/commands.[ch] (view_edit_grid_callback): removed.
9366         * app/display.c (new_display): don't initialise removed Grid members.
9368         * app/grid.c: remove unused functions.
9370         * app/grid.h: remove dialog related stuff from Grid structure.
9371         Remove prototypes for dialog functions.
9373         * app/menus.c: add to menus
9374         
9375         * app/commands.[ch] (view_diagram_properties_callback): new command
9376         for showing the diagram properties dialog.
9378         * app/dia-props.[ch]: a new diagram properties dialog.  To replace
9379         the edit grid dialog.
9381 2000-07-25  James Henstridge  <james@daa.com.au>
9383         * app/grid.c (grid_x_update): 
9384         (grid_y_update): as the grid setting is stored with the diagram,
9385         update all displays when a change is made.
9387         * app/modify_tool.c (modify_motion): use new snap_to_grid sig.
9389         * app/create_object.c (create_object_button_press): 
9390         (create_object_motion): use new snap_to_grid signature.
9392         * app/grid.c (grid_draw): use the grid settings in the DiagramData,
9393         and handle invisible grid lines.
9394         (snap_to_grid): use new grid settings.  Also changed signature to
9395         take a DDisplay rather than Grid pointer.
9396         (grid_show_dialog): get the defaults from the correct place.
9398         * app/display.c (new_display): do not set ddisp->grid.width_[xy].
9400         * app/diagram.c (new_diagram): set the grid size defaults from the
9401         user preferences.
9403         * app/load_save.c (diagram_data_save): save grid and guide info to
9404         diagram file.
9405         (diagram_data_load): add guide and grid load support.
9407         * lib/diagramdata.c (new_diagram_data): set the new DiagramData
9408         members.
9410         * lib/diagramdata.h: add members to DiagramData for grid and guide
9411         settings.
9413         * configure.in (BONOBO_LIBS): update configure scripts
9415         * app/dia.oafinfo: oafinfo file for dia embeddables.
9417         * app/dia_embedd.c: add OAF support.
9419 2000-07-24  James Henstridge  <james@daa.com.au>
9421         * plug-ins/wpg/Makefile.am: 
9422         * plug-ins/pstricks/Makefile.am: 
9423         * plug-ins/hpgl/Makefile.am: 
9424         * plug-ins/dxf/Makefile.am: same here.
9426         * plug-ins/cgm/Makefile.am: remove LIBADD.  Dia already links with
9427         the required libraries, and the link line was causing libtool not
9428         to build a shared library on some systems :(
9430         * plug-ins/cgm/cgm.c (write_real): the initial if statement should
9431         be checking x, not n.
9433 2000-07-23  James Henstridge  <james@daa.com.au>
9435         * app/preferences.c (prefs_data): set the "reset tools after
9436         create" preference to true by default.  That seems to be what most
9437         people expect.
9439         * app/interface.c (create_sheets): instead of a notebook, use an
9440         option menu that updates the sheet tools.  The notebook tabs were
9441         getting a bit unwieldly, so the option menu should fix that.  This
9442         also reduces the number of widgets in the tools radio button
9443         group, which should make the UI a little more responsive.
9445 2000-07-19  Fatih Demir <kabalak@gmx.net>
9446         
9447         * configure.in: Added tr to ALL_LINGUAS.
9448                 [ Yeah, we're now having a Turkish translation,
9449                    too. ]
9450         
9451         * dia.desktop: Added the Turkish entries.
9453 2000-07-02  Fredrik Hallenberg  <hallon@lysator.liu.se>
9455         * doc/diagram.dtd: changed string-element so it conforms to the
9456         output from dia.
9458 2000-06-30  Fredrik Hallenberg  <hallon@lysator.liu.se>
9460         * configure.in: added chinese. 
9461         Use AM_PROG_LIBTOOL instead of AC_PROG_LIBTOOL.
9463         * app/app_procs.c:
9464           app/load_save.c:
9465           app/render_svg.c:
9466           lib/dia_xml.c:
9467           lib/plug-ins.c:
9468           lib/sheet.c:
9469           objects/custom/shape_info.c: 
9470           shapes/Circuit/npn.shape:
9471           shapes/Circuit/pnp.shape:
9472           sheets/*.sheet: dia now works with libxml2.
9473         Libxml2 is a bit more picky when parsing xml and reported errors on all 
9474         sheet files because they use non ascii characters (added 
9475         encoding="iso-8859-1"). Also "xml:lang=en@layman" is not proper xml so 
9476         I commented out these.
9478 2000-06-30  Christopher R. Gabriel  <cgabriel@linux.it>
9480         * configure.in (ALL_LINGUAS): added Italian
9482 2000-06-27  Sung-Hyun Nam  <namsh@lgic.co.kr>
9484         * configure.in (ALL_LINGUAS): added Korean
9486 2000-06-25  James Henstridge  <james@daa.com.au>
9488         * objects/flowchart/parallelogram.c (pgram_create): use default font
9489         and add properties interface support.
9491         * objects/flowchart/ellipse.c (ellipse_create): use default font and
9492         add properties interface support.
9494         * objects/flowchart/diamond.c (diamond_create): use default font and
9495         add properties interface code.
9497         * objects/flowchart/box.c (box_create): use default font.
9499         * objects/custom/custom_object.c (custom_create): use default font
9500         here too.
9502         * objects/standard/textobj.c (textobj_create): update to use default
9503         font.
9505         * lib/attributes.c: add implementations.
9507         * lib/attributes.h (attributes_[gs]et_default_font): add function
9508         prototypes for setting/getting a default font.
9510 2000-06-24  James Henstridge  <james@daa.com.au>
9512         * app/paginate_gnomeprint.h: updated prototype.
9514         * app/paginate_gnomeprint.c (paginate_gnomeprint): update to use
9515         diagram page settings.
9517         * objects/standard/beziergon.c (beziergon_copy): same here.
9519         * objects/standard/polygon.c (polygon_copy): copy the fill colour
9520         as well.
9522         * app/undo.h: 
9523         * app/tool.h (tool_options_dialog_show): 
9524         * app/scroll_tool.h (free_scroll_tool): 
9525         * app/render_svg.h: 
9526         * app/render_libart.h (renderer_libart_copy_to_window): 
9527         * app/render_gdk.h (renderer_gdk_copy_to_window): 
9528         * app/properties.h (properties_hide_if_shown): 
9529         * app/preferences.h (prefs_load): 
9530         * app/object_ops.h: 
9531         * app/modify_tool.h (free_modify_tool): 
9532         * app/magnify.h (free_magnify_tool): 
9533         * app/linewidth_area.h (linewidth_area_create): 
9534         * app/layer_dialog.h: 
9535         * app/handle_ops.h (handle_is_clicked): 
9536         * app/group.h: 
9537         * app/grid.h (grid_destroy_dialog): 
9538         * app/defaults.h (defaults_show): 
9539         * app/cut_n_paste.h (cnp_exist_stored_objects): 
9540         * app/create_object.h (free_create_object_tool): 
9541         * app/connectionpoint_ops.h (diagram_unconnect_selected): 
9542         * app/commands.h: 
9543         * app/color_area.h (color_area_create): 
9544         * app/app_procs.h (app_is_embedded): remove extern keyword from
9545         function prototypes.
9547         * lib/text.h: 
9548         * lib/sheet.h (load_all_sheets): 
9549         * lib/render_store.h: 
9550         * lib/render_object.h (render_object_load): 
9551         * lib/polyshape.h (polyshape_closest_segment): 
9552         * lib/poly_conn.h (polyconn_closest_segment): 
9553         * lib/orth_conn.h: 
9554         * lib/object.h: 
9555         * lib/objchange.h (new_object_state_change): 
9556         * lib/neworth_conn.h (neworthconn_add_segment): 
9557         * lib/message.h (message_error): 
9558         * lib/lazyprops.h: 
9559         * lib/geometry.h: 
9560         * lib/font.h (font_descent): 
9561         * lib/focus.h (remove_focus): 
9562         * lib/element.h: 
9563         * lib/diagramdata.h: 
9564         * lib/dia_xml.h (data_add_composite): 
9565         * lib/dia_image.h: 
9566         * lib/connpoint_line.h: 
9567         * lib/connection.h (connection_move_handle): 
9568         * lib/color.h: 
9569         * lib/attributes.h (attributes_set_default_line_style): 
9570         * lib/arrows.h (arrow_draw): remove extern keyword from function
9571         definitions.  It is not required for functions.
9573         * plug-ins/dxf/Makefile.am (INCLUDES): 
9574         * plug-ins/pstricks/Makefile.am (INCLUDES): 
9575         * plug-ins/cgm/Makefile.am (INCLUDES): 
9576         * objects/SADT/Makefile.am (INCLUDES): 
9577         * objects/chronogram/Makefile.am (INCLUDES): 
9578         * objects/GRAFCET/Makefile.am (INCLUDES): 
9579         * objects/flowchart/Makefile.am (INCLUDES): 
9580         * objects/sybase/Makefile.am (INCLUDES): 
9581         * objects/FS/Makefile.am (INCLUDES): 
9582         * objects/standard/Makefile.am (INCLUDES): 
9583         * objects/network/Makefile.am (INCLUDES):
9584         * objects/UML/Makefile.am (INCLUDES): same here.
9586         * objects/ER/Makefile.am: changed inclusion of some macros to
9587         variables.
9589         * lib/plug-ins.c (dia_register_plugins_in_dir): use a few defines to
9590         handle the plug in extension, rather than have all the #ifdef's in
9591         the code.
9593         * plug-ins/Makefile.am: add renderer.inc to dist.
9595         * plug-ins/dxf/dxf-import.c: Updates from Steffen Macke.
9597 2000-06-11  Asbjorn Pettersen  <asbjornP@dualog.no>
9599         * lib/plug-ins.c: Handle OS/2 dll's too.
9601 2000-06-07  James Henstridge  <james@daa.com.au>
9603         * app/plugin-manager.c (get_plugin_manager): set some table
9604         packing options to make it look a little nicer.
9606         * plug-ins/hpgl/Makefile.am, plug-ins/wpg/Makefile.am: added
9607         makefiles for these plug-ins.
9609         * plug-ins/{hpgl,wmf,wpg}/*: removed dos style cariage returns.
9611         * configure.in: added hpgl and wpg directories to build.  Added
9612         note about whether gnome-print support was enabled, and noted that
9613         it is not recommended.
9615 2000-06-06  James Henstridge  <james@daa.com.au>
9617         * plug-ins/{hpgl,wmf,wpg}/*: Hans Breuer's plug-ins.  They still need
9618         a little work, but I am checking them in so I don't lose them.
9620 2000-06-01  James Henstridge  <james@daa.com.au>
9622         * objects/standard/arc.c: added extra properties.
9624         * lib/beziershape.c (beziershape_closest_handle): fix a bug where I
9625         was using the wrong index into the handles array.  This gets corner
9626         type changing working correctly.
9628         * lib/properties.[ch]: add support for BezPoint's and BezPoint arrays
9629         to properties code (no editing or loading yet though).  Also added
9630         support for point array manipulation through the offsets interfaces.
9632         * lib/Makefile.am (INCLUDES): added include of gdk-pixbuf 
9634         * app/interface.c (origin_button_press): changes so the origin
9635         button doesn't grab the pointer when we pop up the menu.
9637         * app/commands.c (help_about_callback): fix small memory leak in
9638         about box code.
9640         * app/menus.c (menus_init): fixed breakage I introduced in the non
9641         gnome menus when I was doing the menu changes.  The tearoffs work
9642         really nicely in plain gtk mode as well.
9644         * objects/standard/beziergon.c (beziergon_create): changed the
9645         returned handles to match the handle numbering changes.  Now
9646         segment addition and removal works correctly with undo!
9648         * lib/beziershape.c: various changes to the code.  Changed the
9649         numbering of handles, and fixed the segment removal code.
9651 2000-05-31  James Henstridge  <james@daa.com.au>
9653         * objects/standard/beziergon.c: remove connection point handling.
9654         There is still a bit of work to be done to get adding and removing
9655         of segments working correctly.
9657         * lib/beziershape.c: add connection point handling to beziershape.
9658         I set it for two connection points per segment.
9660 2000-05-30  James Henstridge  <james@daa.com.au>
9662         * objects/standard/polygon.c: don't do connectionpoint handling.
9664         * lib/polyshape.c: changed to handle connection points internally.
9665         Also, don't worry about connections to handles on polyshape, as
9666         all handles are non connectable.
9668 2000-05-30 Ville Hautamaki <villeh@cs.joensuu.fi>
9670         * configure.in: Added finnish
9671         
9672 2000-05-30  James Henstridge  <james@daa.com.au>
9674         * sheets/*.sheet: translation updates to the .sheet files.
9676         * po/fr.po: updated po file from Christophe Merlet.
9678         * menus.h: removed prototypes for functions which have been removed.
9680 2000-05-29  James Henstridge  <james@daa.com.au>
9682         * app/layer_dialog.c (layer_dialog_set_diagram): set the selected
9683         item in the option menu when changing selected diagram.
9685         * app/dia_embedd.c (view_factory): fix up function to work with new
9686         menus API.
9688         * app/disp_callbacks.c (ddisplay_realize): remove call to
9689         display_set_active from here.
9690         (ddisplay_canvas_events): move call here.  This gets rid of all the
9691         warnings, as the renderer has been fully set up correctly at this
9692         point.
9694         * app/menus.c (menus_init): add the tearoff item to the start of the
9695         right click menu.
9697         * app/app_procs.c (create_user_dirs): we don't need to create the
9698         menus directory anymore.
9700         * app/disp_callbacks.c (ddisplay_popup_menu): it should not be
9701         necessary to update the menu state here, as it was done when the
9702         active display was set.
9704         * app/display.c (display_set_active): update the menu state when
9705         changing active displays.
9707         * app/interface.c (origin_button_press): set the display as active
9708         when a click is made on the menu button.
9710         * app/menus.c (menus_init): set up a quit function to save the accels
9711         at exit.
9712         Add tearoff items for the non GNOME menus, add accelerators for
9713         several GNOME menus.
9715         * app/disp_callbacks.c (ddisplay_popup_menu): get the menu with
9716         menus_get_image_menu().
9718         * app/menus.c (menus_get_item_from_path): use display_menus here
9719         rather than ddisp->popup.
9721         * app/display.h: remove the popup member in the DDisplay structure.
9723         * app/interface.c: remove option of not using wrap box.
9724         (create_toolbox): change to always use menus_get_toolbox_menubar
9725         even when using gnome menus.
9726         (create_display_shell): use menus_get_image_menu to load accelerators
9727         only -- not the actual popup menu.
9729         * app/menus.c (menus_init): new function to create the menus.
9730         (menus_get_toolbox_menubar): use this function whether gnome is
9731         in use or not.  Changed to use menus_init.
9732         (menus_get_image_menu): same here.  Also, now this function always
9733         returns the same menu, rather than a new one each time.
9734         (menus_init): read a menurc file to load accelerators here.
9736 2000-05-28  James Henstridge  <james@daa.com.au>
9738         * app/display.c (ddisplay_really_destroy): unset active display if
9739         active display is destroyed.
9740         (ddisplay_active): simplify function to return active_display as set
9741         by display_set_active.  This allows using a pinned menu with any
9742         display -- not just the one it was popped up from.
9743         (display_set_active): notify the layer dialog of change of diagrams
9744         when active diagram changes.
9746         * app/disp_callbacks.c (ddisplay_canvas_events): set active display
9747         on button and key presses.
9748         (ddisplay_realize): set active display on realize.
9750         * app/display.c (display_set_active): simple implementation of this
9751         function.
9753         * app/display.h (display_set_active): add prototype for setting
9754         the active display.
9756         * app/interface.c (create_display_shell): don't give focus to the
9757         menu button.
9759         * app/menus.c: fix up menus for Beziergon.
9761         * app/interface.c (create_display_shell): make the widget in the
9762         top left corner a button that can be used to pop up the right click
9763         menu, like in gimp and sketch.
9765         * app/disp_callbacks.c (ddisplay_popup_menu): new function to popup
9766         the display menu.
9768         * objects/standard/beziergon.c (beziergon_set_corner_type_callback):
9769         add code to set corner types for beziergon.
9771         * lib/beziershape.c (beziershape_set_corner_type): fix up corner type
9772         setting code.
9773         (beziershape_move_handle): use the previous corner type for right
9774         controls.
9776         * app/interface.c (tool_data): add beziergon to toolbox.
9778         * objects/standard/standard.c (dia_plugin_init): initialise the new
9779         Beziergon object type.
9781         * objects/standard/beziergon.c: an object based on BezierShape.
9783         * lib/dummy_dep.h (dummy_dep): added to dummy_dep.
9785         * lib/beziershape.[ch]: new files implementing a bezier shape.
9787 2000-05-26  James Henstridge  <james@daa.com.au>
9789         * lib/text.c (text_key_event): handle multibyte inserts.
9790         (text_key_event): also add home and end keybindings.
9792         * app/interface.c (create_display_shell): connect handlers for
9793         focus_in_event, focus_out_event, realize and unrealize signals.
9795         * app/display.[ch] (new_display): initialise input context members.
9797         * app/disp_callbacks.[ch]: added XIM support here.
9799         * lib/font.c (suck_font): the black and white pixel values should be
9800         taken from a 1 bit colormap rather than the default colormap.
9802         Hans Breuer's Windows patches ...
9804         * lib/font.c: use Courier New for fixed width font on windows
9805         machines.
9807         * lib/dia_image.h: change to "struct _DiaImage".
9809         * lib/dia_image.c: change "struct DiaImage" to "struct _DiaImage"
9811         * app/disp_callbacks.c (ddisplay_canvas_events): allow ctrl+right
9812         mouse button for object menu.  This will make two button mouse owners
9813         happier.
9815 2000-05-25  James Henstridge  <james@daa.com.au>
9817         * app/filedlg.c (file_open_ok_callback): use diagram_load here.
9819         * app/app_procs.c (app_init): add extra NULL argument to call of
9820         diagram_load.
9822         * app/load_save.h: remove prototype.
9824         * app/load_save.c: remove diagram_data function here.
9826         * app/diagram.h: added prototype.
9828         * app/diagram.c (diagram_load): new function here, which uses import
9829         filters.
9831         * plug-ins/dxf/dxf.c: register the import filter as well.
9833         * plug-ins/dxf/dxf-import.c: added (unfinished) DXF import filter from
9834         Steffen Macke <macke@heini.fbbwu.fh-lueneburg.de>
9836         * objects/standard/line.c: add start_point and end_point properties
9837         to standard line object.
9839 2000-05-21  James Henstridge  <james@daa.com.au>
9841         * app/paginate_psprint.c: added missing include of locale.h.
9843         * objects/custom/custom_object.c (custom_draw): use fabs rather than
9844         abs for scaling factors.
9845         (custom_distance_from): same here.
9847         * dia.spec: make sure rpm doesn't bomb out when LINGUAS isn't set.
9849 2000-05-18  James Henstridge  <james@daa.com.au>
9851         * po/POTFILES.in: updated POTFILES.in.
9853         * dia.spec: incremented version number in spec file.
9855         * NEWS: added (lots of) news items for the 0.85 release.
9857         * app/preferences.c (prefs_save): set LC_NUMERIC to C while writing
9858         the config file.
9860         * configure.in: updated version number here.
9862         * app/Makefile.am (run_dia.sh): include plug-ins in the lib path.
9864 2000-05-17  James Henstridge  <james@daa.com.au>
9866         * app/app_procs.c (internal_plugin_init): register the native import
9867         filter.
9869         * app/load_save.c (diagram_data_load, diagram_load): split this
9870         function into two -- one that does all the work on the DiagramData
9871         structure, and the other that provides compatibility with the old
9872         function.
9873         (dia_import_filter): use diagram_data_load to define an import
9874         filter.
9876         * app/diagram.h (new_diagram): added const to prototype.
9878         * app/filedlg.c (file_open_callback): change to use new import filter
9879         code.
9881         * lib/filter.c: added import filter management functions.
9883         * lib/filter.h: added prototypes for import filter interface.
9885         * app/commands.c (help_about_callback): updated about dialog to
9886         contain a few more names.
9888 2000-05-16  James Henstridge  <james@daa.com.au>
9890         * configure.in (Configuration): added a status message to the end of
9891         the configure script to give the user some idea of what was
9892         configured.
9894         * plug-ins/dxf/Makefile.am: Makefile for new plugin.
9896         * plug-ins/dxf/dxf.c (dia_plugin_init): added file to initialise the
9897         plugin.
9899         * plug-ins/dxf/dxf-export.c: new file -- Steffen Macke's DXF export
9900         filter for dia.
9902         * configure.in (AM_PATH_LIBART): use the check function provided
9903         with libart rather than our own code.  It is more reliable, and
9904         it only requires that people who build out of CVS have libart.m4
9905         installed (not necessarily all of libart).
9906         (AM_PATH_GDK_PIXBUF): same here for gdk-pixbuf.
9908 2000-05-12  Andreas Hyden  <a.hyden@cyberpoint.se>
9910         * dia.desktop: Added Swedish translation.
9912 2000-05-09  James Henstridge  <james@daa.com.au>
9914         * lib/dia_xml.c: you can't free a const pointer, so remove const
9915         from variable definitions.
9917         Explicitely set LC_NUMERIC where needed, as sometimes it isn't
9918         initialised correctly.
9920         * app/render_svg.c (export_svg): set locale to C.
9922         * app/paginate_psprint.c (paginate_psprint): set locale to C.
9924         * app/render_eps.c (export_eps): set locale to C for EPS export.
9926         * lib/dia_xml.c (data_add_real): change to C locale for snprintf call.
9927         (data_add_point): same here.
9928         (data_add_rectangle): same here.
9929         (data_real): use g_strtod to convert strings to real numbers, so that
9930         locales are taken into account.
9931         (data_point): same here.
9932         (data_rectangle): same here.
9934         * AUTHORS: added Henk and Jacek to authors file.
9936         Daniel Egger's code cleanups.
9938         * app/select.c (select_invert_callback): remove unused variable.
9940         * app/plugin-manager.c (get_plugin_manager): fix typo.
9942         * app/load_save.c (read_connections, write_objects): 
9943         (write_connections): made some functions static.
9945         * app/interface.c (toolbox_delete, toolbox_destroy): made some
9946         functions static.
9948         * app/filedlg.c (file_export_callback): remove unused variable.
9950         * app/app_procs.c: various warning fixes.
9952         Integrating Jacek Pliszka's pstricks export filter.
9954         * plug-ins/pstricks/pstricks.c: code to initialise the plugin.
9956         * plug-ins/pstricks/render_pstricks.[ch]: Jacek Pliszka's pstricks
9957         renderer (with a few small modifications by me).
9959         * plug-ins/pstricks/Makefile.am: new makefile for pstricks plug-in.
9961         * plug-ins/Makefile.am (SUBDIRS): add pstricks subdirectory.
9963 2000-05-07  Alexander Larsson  <alla@lysator.liu.se>
9965         * configure.in:
9966         * sheets/Makefile.am:
9967         * shapes/Makefile.am:
9968         * shapes/Civil/Makefile.am:
9969         * sheets/civil.sheet:
9970         * shapes/Civil/*:
9971         Added civil/hydraulic/structural engineering objects from
9972         sdteffen <macke@heini.fbbwu.fh-lueneburg.de>.
9973         
9974 2000-05-07  Alexander Larsson  <alla@lysator.liu.se>
9976         * objects/FS/flow-poly.c:
9977         * objects/FS/flow.c:
9978         Fix division by zero in point_normalize().
9979         Patch by David Thompson <dcthomp@mail.utexas.edu>
9981 2000-04-27  Lars Clausen  <lrclause@cs.uiuc.edu>
9983         * lib/arrows.c:
9984         * lib/bezier_conn.c:
9985         * lib/connpoint_line.c:
9986         Added checks for zero-length lines before calls to point_normalize.
9988 2000-04-24  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
9990         * app/preferences.c (prefs_data): Changed
9991         reversed_dragging_intersects to not make the dialog ridiculously
9992         wide.
9993         
9994 2000-04-22  James Henstridge  <james@daa.com.au>
9996         Hans's win32 patches:
9998         * app/export_png.c: include message.h
9999         * app/interface.c: include dia_dirs.h
10000         * app/linewidth_area.c: check for rint
10001         * app/main.c: include interface.h
10002         * app/paginate_psprint.c: remove unused variable.
10003         * app/preferences.c: include message.h
10004         * app/render_svg.c: include stdlib.h
10005         * app/select.c: include object_ops.h
10006         * lib/dia_dirs.c: miscelaneous fixes for win32.
10007         * lib/dia_image.c: include string.h
10008         * lib/plug-ins.c: look for .dll files rather than .la files on win32.
10009         * lib/properties.c: include stdlib.h
10010         * lib/properties.h: define extra data for standard properties as
10011         static variables on win32 (to get around dynamic linker problems).
10012         * objects/standard/polygon.c: polygon_create_change missing return
10013         statement.
10015 2000-04-18  Pablo Saratxaga <pablo@mandrakesoft.com>
10017         * configure.in (ALL_LINGUAS): added Catalan
10019 2000-04-18  James Henstridge  <james@daa.com.au>
10021         * objects/standard/bezier.c (bezierline_get_object_menu): add a
10022         separator to the object menu between the add/remove segment items
10023         and the corner type items.
10024         (bezierline_get_object_menu): add code to disable the menu item for
10025         the current corner type.  Really just a cosmetic change.
10027         * app/disp_callbacks.c (create_object_menu): handle DiaMenuItems with
10028         a NULL for the label or with no associated callback.
10030         * objects/standard/bezier.c (bezierline_menu_items): use the
10031         enumeration values rather than numeric values for the corner types.
10033         * lib/bezier_conn.[ch]: added a corner_types member to the BezierConn
10034         structure, and add code to handle it.  Also, don't save the corner
10035         types inline in the bez_points node.  The way it is conditionally
10036         including the element just feels like it will break.
10038         * lib/geometry.h (BezPoint): removed the corner_type stuff from
10039         BezPoint.  The corner type stuff is a user interface level idea rather
10040         than something required by the renderer, so should be taken care of
10041         at the object level.
10043 2000-04-17  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
10045         * configure.in: Fixed some problems with the gdk-pixbuf/imlib
10046         checks.  Weren't able to reproduce original bug, tough.
10048 2000-04-16  Cyrille Chepelov  <chepelov@calixo.net>
10050         * sheets/Electric.sheet:
10051         * sheets/Contact.sheet:
10052         * sheets/Pneumatic.sheet:
10053         * sheets/Circuit.sheet: sprayed some <br/>'s around.
10054         (added a few French translations in the last file)
10055         
10056 2000-04-16  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
10058         * lib/geometry.h: 
10059         * lib/bezier_conn.h: 
10060         * objects/standard/bezier.c: 
10061         * lib/bezier_conn.c: Support for cuspy, smooth and symmetric
10062         bezier points.  Only one minor problem known:  Menus are active
10063         for endpoints minor handles.
10064         11:28: Save and load now works, too.
10065         (bezierconn_closest_major_handle): 12:03: New function to get the
10066         non-control point handle associated with the nearest control
10067         point.  
10068         Also fixed the menu activation problem, and made remove_segment
10069         not remove the endpoint.
10071 2000-04-15  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
10073         * configure.in: Added check for gdk-pixbuf being >= 0.7.0 since
10074         new API is in use.
10076 2000-04-15  Asbjorn Pettersen  <asbjornP@dualog.no>
10078         * lib/plug-ins.c: Added <sys/types.h> and moved <fcntl.h> below
10079         <sys/stat.h>.   OS/2 patch.
10081 2000-04-15  James Henstridge  <james@daa.com.au>
10083         * objects/FS/flow-ortho.c, objects/FS/function.c: Applied David
10084         Thompson's patch that adds undo support to the function structure
10085         diagram objects.
10087 2000-04-14  James Henstridge  <james@daa.com.au>
10089         * objects/custom/custom_object.c (custom_distance_from): new
10090         implementation of distance algorithm that actually takes the
10091         display list into account when calculating the distance.  Much nicer
10092         than a simple bounding box.
10094 2000-04-13  Lars Clausen  <lrclause@cs.uiuc.edu>>
10096         * lib/geometry.c (line_crosses_ray): Fixed division by zero bug
10098 2000-04-12  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
10100         * objects/standard/polygon.c: Start of polygons own changes (for
10101         connectionpoints).  Need to do seperate changes in polyshape, too,
10102         rather than reuse the bezier changes.
10104 2000-04-13  James Henstridge  <james@daa.com.au>
10106         * lib/dia_image.c (dia_image_draw): use the new enumeration values
10107         from after the gdk-pixbuf cleanup.
10109         * lib/geometry.c (bez_point_distance_and_ray_crosses): fix up limit
10110         on for loop.  Last set of coefficients were not beeing calculated,
10111         which caused a bit of breakage.
10113         * lib/bezier_conn.c (bezierconn_closest_segment): use the new
10114         functions in geometry.c for calculating the closest segment.
10115         (bezierconn_distance_from): use distance_bez_line_point to calculate
10116         the distance.
10118         * lib/geometry.c (distance_bez_line_point): new function to calculate
10119         the distance from an open bezier line to a point.
10120         (distance_bez_shape_point): new function to calculate the distance
10121         from a closed bezier shape.
10122         (distance_ellipse_point): new function to calculate the distance from
10123         a filled ellipse to a point.
10125         * lib/geometry.h (BezPoint): moved this structure here from render.h
10127 2000-04-12  James Henstridge  <james@daa.com.au>
10129         * lib/geometry.c (distance_bez_seg_point): new function to calculate
10130         the distance from a bezier segment.
10132         * lib/polyshape.c (polyshape_distance_from): use distance_polygon_point
10133         to calculate the distance from the object.
10135         * lib/geometry.c (distance_polygon_point): function for calculating
10136         the distance from a polygon to a point.
10138 2000-04-12  Cyrille Chepelov  <chepelov@calixo.net>
10140         * app/interface.c:
10141         * lib/sheet.[ch]: added a <br/> tag in sheet files, so that line 
10142         breaks can be inserted in the tool box. 
10144         * doc/sheet.dtd: updated the DTD
10145         * sheets/GRAFCET.sheet: tried <br/> on that sheet (more to come).
10146         
10147 2000-04-12  James Henstridge  <james@daa.com.au>
10149         * app/plugin-manager.c (get_plugin_manager): use the GTK_DIALOG
10150         macro if the dialog is a GtkDialog :(
10152 2000-04-11  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
10154         * objects/standard/polygon.c: Connectionpoints now properly
10155         managed in a GList.  As far as I can tell, this will not dieturb
10156         the order (but I have the nagging doubt...)
10158         * lib/polyshape.c: No longer knows about connectionpoints.
10160 2000-04-11  James Henstridge  <james@daa.com.au>
10162         * app/Makefile.am: fix makefile for bonobo build.
10164         * configure.in: fix checks for bonobo.
10166         * app/menus.c: added entries for the plugin manager.
10168         * app/Makefile.am (dia_core_files): added plugin manager to files
10169         list.
10171         * app/plugin-manager.[ch]: the plugin manager dialog.
10173         * app/display.c (display_update_menu_state): set the antialiased
10174         menu entry to the correct value.
10176 2000-04-11  Cyrille Chepelov  <chepelov@calixo.net>
10178         * objects/custom/custom_object.c: not all renderers like ellipses with
10179         negative dimensions. This could cause ellipses to disappear when using
10180         the flip_h and flip_v functions.
10182         * samples/grafcet.dia: fixed speling and correctness.
10183         
10184 2000-04-11  James Henstridge  <james@daa.com.au>
10186         * lib/plug-ins.[ch]: added more accessors for use by a plugins dialog.
10187         exposed the dia_plugin_load and dia_plugin_unload functions.
10189         * lib/plug-ins.c (plugin_load): change plugin_load to work on an
10190         already created PluginInfo structure.
10192         * app/app_procs.c (app_exit): call dia_pluginrc_write() to write
10193         the pluginrc file.
10195         * lib/sheet.c: fix up call to dia_config_filename.
10197         * lib/plug-ins.[ch]: started writing code for handling a pluginrc
10198         file.  This would save information such as which plugins not to
10199         load during startup.
10201 2000-04-09  James Henstridge  <james@daa.com.au>
10203         * lib/sheet.c: use dia_config_filename to resolve file in ~/.dia.
10205 2000-04-10  Alexander Larsson  <alla@lysator.liu.se>
10207         * lib/plug-ins.c (dia_register_plugins):
10208         Don't free the value returned from g_getenv.
10210 2000-04-09  Anders Carlsson  <andersca@gnu.org>
10212         * app/preferences.h: Add reverse_rubberbanding_intersects preference variable.
10214         * app/preferences.c (prefs_data): Add reverse_rubberbanding_intersects preference data.
10216         * app/modify_tool.c (modify_button_release): If rubberbanding is done from 
10217         right to left, select objects that intersect the rubberbanding rectangle
10218         instead of selecting objects that are in the rectangle.
10220         * lib/diagramdata.c (layer_find_objects_intersecting_rectangle): Add function.
10222         * lib/diagramdata.h: Likewise.
10225 2000-04-09  James Henstridge  <james@daa.com.au>
10227         * lib/plug-ins.[ch]: add copyright messages to files.
10229         * plug-ins/cgm/cgm.c (dia_plugin_init): convert plugin over to new
10230         plugin interface.
10232         * objects/sybase/sybase.c (dia_plugin_init): 
10233         * objects/network/network.c (dia_plugin_init): 
10234         * objects/flowchart/flowchart.c (dia_plugin_init): 
10235         * objects/custom/custom.c (dia_plugin_init): 
10236         * objects/chronogram/chronogram.c (dia_plugin_init): 
10237         * objects/UML/uml.c (dia_plugin_init): 
10238         * objects/SADT/sadt.c (dia_plugin_init): 
10239         * objects/GRAFCET/grafcet.c (dia_plugin_init): 
10240         * objects/FS/fs.c (dia_plugin_init): 
10241         * objects/ER/er.c (dia_plugin_init): updated plugin load code for
10242         object libraries.
10244         * objects/standard/standard.c (dia_plugin_init): change over to new
10245         plugin interface.
10247         * lib/plug-ins.h (DIA_PLUGIN_CHECK_INIT): added a macro to define
10248         the version checker for plugins.
10250         * app/app_procs.c: remove plugin loading code from here, and use
10251         code from plug-ins.[ch].  Also move registration of internal
10252         objects/filters to a `builtin' plugin.
10254         * lib/Makefile.am (libdia_a_SOURCES): added plug-ins.[ch] to library.
10256         * configure.in: use AC_PROG_LIBTOOL rather than AM_PROG_LIBTOOL.
10258         * app/Makefile.am (EXTRA_DIST): you can't include a conditionally
10259         defined variable in EXTRA_DIST.
10261         * app/preferences.h: removed dia_config_filename from header.
10263         * app/preferences.c: removed dia_config_filename function.
10265         * lib/dia_dirs.c (dia_config_filename): moved function over to this
10266         file.  Also changed implementation slightly so that it should work
10267         on the win32 port correctly (and use NT home directories).
10269         * lib/dia_dirs.h (dia_config_filename): move dia_config_filename where
10270         it should have been.
10272         * lib/plug-ins.[ch]: new plugin loading code.
10274 2000-04-08  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
10276         * objects/standard/polygon.c: Fixed startup crash bug (do'h!).
10278         * lib/polyshape.c: Fix closest segment finding, exposes deeper
10279         bugs in adding corners to 'wraparound' segment.
10281         * objects/standard/polygon.c: Added connection points (fixed so
10282         far), set menu sensitivity.
10284         * lib/polyshape.c: Changed to box-style handles, fixed for start
10285         and ends not being special, added initial connections,
10287         * lib/dummy_dep.h: Added polyshape (gotcha!)
10289         * objects/standard/pixmaps/ellipse.xpm: 
10290         * objects/standard/pixmaps/box.xpm: 
10291         Filled element pixmaps with white.
10293         * lib/polyshape.c: 
10294         * objects/standard/polygon.c: 
10295         * lib/polyshape.h: 
10296         * objects/standard/standard.c: 
10297         * objects/standard/Makefile.am (libstandard_objects_la_SOURCES): 
10298         * lib/Makefile.am (libdia_a_SOURCES): 
10299         * app/menus.c: 
10300         * app/interface.c (tool_data): 
10301         Added Standard/Polygon object and PolyShape lib object.  Still
10302         needs inside grab and connection points.
10304         * app/commands.c (help_about_callback): Now uses gdk-pixbuf if
10305         available. 
10307         * configure.in: Made imlib a fallback if gdk-pixbuf is absent or
10308         not wanted.
10310         * app/app_procs.c (app_init): Moved gtk_init outside #ifdef, moved
10311         if (argv) outside ifdefs.
10313 2000-04-04  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
10315         * objects/standard/image.c (image_set_props): 
10316         Aspect ratio is back in town.
10318         * app/Makefile.am (dia_LDADD): 
10319         * acconfig.h: 
10320         * configure.in: 
10321         Check for gdk_pixbuf (by default disabled, for now)
10323         * app/render_eps.c (draw_image): 
10324         * app/render_libart.c (draw_image): 
10325         * app/render_gnomeprint.c (draw_image): 
10326         Support for alpha mask in rendering.  Color postscript, too.
10328         * lib/dia_image.c: 
10329         * lib/dia_image.h: 
10330         Support for gdk_pixbuf and proper masking for exports.
10332 2000-04-01  Kjartan Maraas  <kmaraas@online.no>
10334         * sheets/*.sheets: Updated Norwegian translations.
10335         
10336 2000-03-30  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
10338         * lib/text.c (text_insert_char): 
10339         * lib/render_store.c (add_data): 
10340         Made realloc double the alloced space rather than add
10341         a fixed amount, to reduce memory stress.
10343         * app/select.c: Added new select method 'Transitive'
10344         that select every reachable (by connections) object.
10346 2000-03-27  Kjartan Maraas  <kmaraas@online.no>
10348         * dia.desktop: Added Norwegian translation.
10349         
10350 2000-03-26  Alexander Larsson  <alla@lysator.liu.se>
10352         * app/render_eps.c:
10353         * app/render_svg.c:
10354         Don't dereference NULL pointer if the renderer
10355         couldn't open the file. Fix by Lars Clausen.
10356         Bug reported by Martin Chisholm <b1mt@unb.ca>
10357         
10358 2000-03-26  Alexander Larsson  <alla@lysator.liu.se>
10360         * dia.desktop:
10361         * po/pt.po:
10362         Updated pt translation from Pedro Morais <pmmm@rnl.ist.utl.pt>
10364 2000-03-25  Alexander Larsson  <alla@lysator.liu.se>
10366         * app/dia.gnorba (location_info):
10367         Changed to correct executable name.
10369 2000-03-25  Alexander Larsson  <alla@lysator.liu.se>
10371         * app/app_procs.c:
10372         Don't do any argument parsing or initialization
10373         if argv==NULL.
10375         * app/dia_embedd.c:
10376         Call init_server_factroy before app_init.
10377         Call app_init with argv==NULL
10378         Now we don't get any critical error on startup.
10380         * configure.in:
10381         Add Electric and Pneumatic to makefile list.
10382         
10383 2000-03-24  Cyrille Chepelov <chepelov@calixo.net>
10385         * shapes/Electric/*:
10386         * sheets/Electric.sheet:
10387         Add some Electric circuit shapes.
10389         * shapes/Pneumatic/*:
10390         * sheets/Pneumatic.sheet:
10391         Add some Pneumatic & Hydraulic circuit shapes
10392         (both sheets are still incomplete, though feature enough 
10393         things for basic circuits).
10395         * shapes/Contact/l_*.(xpm|shape):
10396         * sheets/Contact.sheet
10397         * shapes/Contact/Makefile.am
10398         made the older electric circuit shapes in Contact obsolete (disabled
10399         them in the sheet, made that sheet Ladder only). Fixed the makefile
10400         for forgotten items.
10401         
10402 2000-03-24  Alexander Larsson  <alla@lysator.liu.se>
10404         * app/Makefile.am:
10405         Add support for Dia bonobo component.
10406         Currently a bit raw, so it's commented out.
10407         
10408         * app/dia_embedd.c:
10409         * app/dia.gnorba:
10410         New files for embedding dia.
10411         The menu disabling hack is a bit gross. Esp. for GNOME.
10413         * app/app_procs.h:
10414         Add new function app_is_embedded();
10416         * app/diagram.c:
10417         Don't destroy diagram when last display is destroyed if embedded.
10418         
10419         * app/display.c:
10420         Change initialization of display so it works with embedding.
10422         * app/display.h:
10423         Clarify comment about display destruction.
10425         * app/interface.[ch]:
10426         Added top_level_window argument to create_display_shell.
10427         Don't open a top-level window if embedding.
10428         Don't quit app if trying to close toolbox window when embedding.
10429         Add toolbox_show() and toolbox_hide().
10431         * app/main.c:
10432         Added app_is_embedded() function (just returns false).
10433         Added toolbox_show() call in main().
10435         * app/menus.c:
10436         Added code for getting toolbox menus. This is used to
10437         hide some menu items when running embedded.
10438         
10439         * app/app_procs.c:
10440         Include sheet.h to remove warning.
10442         * objects/UML/association.c:
10443         Clarify association direction text.
10444         
10445 2000-03-16  Fredrik Hallenberg  <hallon@lysator.liu.se>
10447         * dia.1
10448         Fixed man page so whatis parsing works.
10450 2000-03-12  Alexander Larsson  <alla@lysator.liu.se>
10452         * app/render_libart.c (new_libart_renderer):
10453         Fix from segg <segg@infonet.ca> to compile without libart.
10454         I forgot to change the stub for new_libart_renderer when doing
10455         the interactive renderer stuff for libart.
10457 2000-03-11  Alastair McKinstry  <mckinstry@computer.org>
10459         * dia.desktop: Added Irish translation.
10460         
10461         * configure.in (ALL_LINGUAS): Added Irish (ga) translation.
10463 2000-03-07  Asbjorn Pettersen  <asbjornP@dualog.no>
10465         * app/load_save.c (fchmod): OS/2 defines only.
10467 2000-03-07  James Henstridge  <james@daa.com.au>
10469         * lib/properties.c (prop_get_widget): set the position in the option
10470         menu correctly.
10472 2000-03-06  Alexander Larsson  <alla@lysator.liu.se>
10474         * app/display.c:
10475         * app/export_png.c:
10476         * app/render_libart.[ch]:
10477         Don't export png:s with an interactive libart renderer.
10479 2000-03-03  Asbjorn Pettersen  <asbjornP@dualog.no>
10481         * lib/arrows.c (finite): define finite(d) isfinite(d)  for OS/2
10483 2000-03-02  James Henstridge  <james@daa.com.au>
10485         * dia.spec (%build): unset LINGUAS before running configure.  This
10486         ensures that all translations get included in the RPM.
10488         * lib/properties.c (object_create_props_dialog): put in a check for
10489         a NULL return from the describe_props() object method.
10490         (prop_desc_lists_union): make sure that the returned array is not
10491         NULL.
10492         (prop_desc_lists_intersection): same here.
10494 2000-02-29  Alexander Larsson  <alla@lysator.liu.se>
10496         * objects/ER/Makefile.am:
10497         * objects/FS/Makefile.am:
10498         * objects/UML/Makefile.am:
10499         Don't link object libs with gtk.
10501 2000-02-29  James Henstridge  <james@daa.com.au>
10503         * app/preferences.c (prefs_save): check to see if the file could
10504         be opened before writing the prefs.
10506         * app/disp_callbacks.c (popup_object_menu): pass the button event
10507         to gtk_menu_popup.  This allows you to click and release to open
10508         the object menu.
10509         (ddisplay_canvas_events): same here.
10510         (create_object_menu): set the object type menu item in the object
10511         menu to be insensitive.
10513         * app/render_svg.c (draw_string): call xmlEncodeEntitiesReentrant,
10514         as we are now requiring a new version of libxml.
10516         * dia.spec: updated version number.  Added requirement for
10517         libxml >= 1.8.5
10519         * configure.in: incremented version number to 0.84.
10520         Added check for libxml >= 1.8.5.  This will prevent some of the
10521         problems people have had with broken libxml versions.
10523         * NEWS: added news items.
10525         * app/interface.c (create_color_area): removed call to realize parent
10526         widget.  Segg <segg@infonet.ca> reported that it caused a warning,
10527         but I haven't seen it on my copy of dia.
10529 2000-02-28  James Henstridge  <james@daa.com.au>
10531         * app/export_png.c: added copyright notice, and made the band height
10532         a constant.
10534 2000-02-27  Alexander Larsson  <alla@lysator.liu.se>
10536         * lib/font.c (suck_font):
10537         Fixed off-by one bug in font pixmap height.
10538         Fixes the problem with garbage at the bottom of some text in aa mode
10539         and in png exported files.
10541 2000-02-27  James Henstridge  <james@daa.com.au>
10543         * app/app_procs.c: add the png export filter if it was compiled in.
10545         * app/export_png.c (export_png): new PNG export filter.  This requires
10546         the libart renderer to work as it needs a renderer that renders to a
10547         pixel buffer.
10549         * configure.in: add check for libpng.
10551         * lib/message.c (message_internal): use a GNOME dialog here as well.
10553         * app/display.c (ddisplay_close): use a GNOME dialog here.
10555         * app/render_eps.c (create_eps_renderer): use diagram scaling factor
10556         when exporting to EPS.  This is because some people said the EPS
10557         output was too large
10559 2000-02-26  James Henstridge  <james@daa.com.au>
10561         * app/defaults.c (create_dialog): use a GNOME dialog for the defaults
10562         window.
10564         * app/app_procs.c (app_exit): use a GNOME dialog here.
10566         * app/preferences.c (prefs_create_dialog): if GNOME support is
10567         enabled, show a GNOME dialog.
10569         * app/grid.c (grid_draw): use preferences when drawing page break
10570         lines.
10572         * app/preferences.c: add page break preferences to dialog.
10574         * app/preferences.h: added page break preferences.
10576 2000-02-25  James Henstridge  <james@daa.com.au>
10578         * sheets/UML.sheet: added new objects.
10580         * objects/UML/uml.c: link in the two new objects.
10582         * objects/UML/node.c: 
10583         * objects/UML/branch.c: new UML objects from Stfan Seefeld
10584         <seefelds@magellan.umontreal.ca>.
10586 2000-02-24  James Henstridge  <james@daa.com.au>
10588         * objects/custom/custom_object.c: converted to use the properties
10589         interface.  In the future, it would be nice to add support for
10590         defining custom properties for custom objects, but that can wait.
10592 2000-02-22  James Henstridge  <james@daa.com.au>
10594         * sheets/Circuit.sheet: added new circuit shapes to sheet.
10596         * plug-ins/cgm/cgm.c: cgm plugin updates from Henk Jan Priester
10597         <hj@justcroft.com>.  Fixes number encoding, colour encoding, fonts
10598         and adds a few new features.
10600 2000-02-21  Daniel Egger  <egger@suse.de>
10602         * sheets/*.sheets: Added German translations and made some
10603         corrections to the others.
10604         
10605 2000-02-21  James Henstridge  <james@daa.com.au>
10607         * shapes/Circuit/Makefile.am (SHAPES): added new shapes to list.
10609         * shapes/Circuit/...: added new shapes from Erik Janssens.
10611 2000-02-20  James Henstridge  <james@daa.com.au>
10613         * app/interface.c (create_color_area): realize the parent window
10614         first.
10616         * objects/standard/image.c: properties patch for standard image
10617         object, from Lars Clausen.
10619         * lib/properties.c: support for PROP_TYPE_FILE from Lars Clausen.
10621         * lib/properties.h (PropType): added file property type.
10623         * shapes/Circuit/speaker_de.xpm: changed size of pixmap to match
10624         other shapes.
10626         * app/interface.c: use wrap box for toolbox.
10628         * app/Makefile.am: added new files.
10630         * app/gtk*wrapbox.[ch]: added wrap box widget.
10632 2000-02-19  James Henstridge  <james@daa.com.au>
10634         * sheets/network.sheet: added extra shapes to networks sheet.
10636         * configure.in (AC_OUTPUT): added shapes/network/Makefile
10638         * shapes/network/*: added shapes that were posted to the list a while
10639         back.
10640         
10641         * shapes/Makefile.am (SUBDIRS): added network subdirectory
10643         * app/menus.c (toolbox_menu_items): don't right justify help menu for
10644         gtk+ version of menus.
10646         * app/properties.c (create_dialog): use a GnomeDialog if we happen
10647         to be using gnome.
10649 2000-02-18  James Henstridge  <james@daa.com.au>
10651         * objects/flowchart/box.c: set extra data for corner radius and text
10652         padding properties.
10654         * objects/standard/box.c: set extra data for corner radius property.
10656         * lib/properties.h: set extra data in some standard properties.
10658         * lib/properties.c (prop_get_widget): look at the extra data for
10659         int, real and enum property types.  They now use GtkSpinButton and
10660         GtkOptionMenu respectively.
10662         * lib/properties.h: extra data members for creating property setting
10663         widgets.
10665 2000-02-17  James Henstridge  <james@daa.com.au>
10667         * objects/flowchart/box.c: reverted load/save functions back to
10668         previous implementations.  Made box use standard property names.
10670         * plug-ins/cgm/cgm.c (set_linestyle): was missing a */
10672         * app/grid.c: add more digits to the grid edit dialog.  This patch
10673         was also from Lars Clausen.
10675         * objects/standard/zigzagline.c: 
10676         * objects/standard/textobj.c:
10677         * objects/standard/polyline.c:
10678         * objects/standard/line.c:
10679         * objects/standard/ellipse.c:
10680         * objects/standard/box.c: 
10681         * objects/standard/bezier.c: 
10682         * objects/standard/arc.c: patches to add properties code to standard
10683         objects.  Based on patches from Lars Clausen.  I have also removed
10684         some dead code from the files.
10686         * lib/properties.h (PROP_STD_*): define a number of standard
10687         properties.  Where appropriate, objects should include these
10688         properties in their PropDescription list.  This way, the intersection
10689         of properties of two different shapes will be greater.
10691 2000-02-14  James Henstridge  <james@daa.com.au>
10693         * objects/flowchart/box.c (box_load, box_save): use property save
10694         routines.  Make sure that any props not handled by object_load_props
10695         are loaded before calling object_load_props, or we get errors because
10696         update_data is called.
10698         * lib/properties.c (object_get_props_from_offsets): fixed an indexing
10699         error that could cause properties to be loaded incorrectly.
10700         (object_set_props_from_offsets): similar here.
10702         * lib/properties.[ch] (prop_{load,save}): functions for loading
10703         or saving a property in Dia's XML file format.
10704         (object_{load,save}_props): load or save some properties of an
10705         object.  These functions should help simplify the load/save methods
10706         of objects that implement the properties interface.
10708 2000-02-13  James Henstridge  <james@daa.com.au>
10710         * objects/flowchart/box.c: use offset code to simplify property
10711         get/set routines.
10713         * lib/element.h (ELEMENT_COMMON_PROPERTIES): standard element
10714         properties.
10715         (ELEMENT_COMMON_PROPERTIES_OFFSETS): offsets.
10717         * lib/object.h (OBJECT_COMMON_PROPERTIES): list of standard object
10718         properties.
10719         (OBJECT_COMMON_PROPERTIES_OFFSETS): the offsets of the properties.
10721         * lib/properties.[ch] (object_{get,set}_props_from_offsets): new
10722         functions 
10724 2000-02-12  Alexander Larsson  <alla@lysator.liu.se>
10726         * app/Makefile.am:
10727         Add the custom object to DIA_LIB_PATH in run_dia.sh
10729 2000-02-10  Cyrille Chepelov  <chepelov@calixo.net>
10731         * sheets/Circuit.sheet:
10732         * shapes/l_sout* (NEW):
10733         * shapes/l_outj.* (NEW): added new outputs : jump, and the power-saved
10734         variants of simple, inverted, set and reset outputs.
10735         Still to do: all Schneider/Telemecanique TSX *7 function blocks ; 
10736         probably a split of Contact and Ladder sheets. And then a major 
10737         revamping of the Contact sheet.
10739 2000-02-10  James Henstridge  <james@daa.com.au>
10741         * app/Makefile.am (dia_LDADD): don't link with libcustom_objects.
10743         * app/app_procs.c (register_all_objects): don't explicitely
10744         register the custom objects library -- let it be loaded by the
10745         normal plugin loading methods.
10747         * lib/Makefile.am (libdia_a_SOURCES): don't include custom.h here.
10749         * objects/custom/Makefile.am: build libcustom_objects as a shared
10750         library again.
10752         * objects/custom/shape_info.[ch]: don't read the description field
10753         of custom shapes.  It makes more sense to have these in the sheet
10754         file to localise the parts of dia that translators have to deal
10755         with.
10757         * objects/custom/custom_object.c (custom_object_new): do not
10758         create the sheet object for the new custom shape -- this is
10759         handled by the custom sheet code.
10761         * objects/custom/custom.c: change over to being a normal plug-in
10762         rather than being linked with the main dia executable.
10764 2000-02-09  James Henstridge  <james@daa.com.au>
10766         * sheets/Circuit.sheet: 
10767         * sheets/Flowchart.sheet: 
10768         * sheets/Contact.sheet: fixed up sheets.
10770         * objects/custom/custom_object.c (custom_object_new): set the
10771         extra ObjectType fields.
10773         * lib/sheet.c: use extra ObjectType fields when creating sheet
10774         objects.  Give a warning if <shape> tags are found in a sheet
10775         file.  Now the custom sheet code does not know about custom
10776         shapes -- they look like any other object type.
10778         * lib/object.h (ObjectType): added extra members
10780 2000-02-08  Alexander Larsson  <alla@lysator.liu.se>
10782         * app/linewidth_area.c:
10783         Added code to set arbitrary line width.
10784         Patch by Lars Clausen <lrclause@cs.uiuc.edu>
10786 2000-02-08  Alexander Larsson  <alla@lysator.liu.se>
10788         * app/linewidth_area.c: 
10789         * lib/font.[ch]:
10790         Add support for font-sucking.
10791         Implementation borrowed from gnome-canvas.
10792         
10793         * app/render_libart.[ch]:
10794         Implement text rendering.
10796 2000-02-07  Alexander Larsson  <alla@lysator.liu.se>
10798         * app/properties.c (create_dialog):
10799         ref and sink no_properties_dialog.
10801 2000-02-07  James Henstridge  <james@daa.com.au>
10803         * app/group.c (group_describe_props): new function.  Return the
10804         intersection of the properties of the contained objects that
10805         implement the describe_props interface.
10806         (group_get_props): implement by iterating through contained objects
10807         and calling their get_props method until all properties have been
10808         set.  Maybe this should go through all objects all the time??
10809         (group_set_props): implement by calling set_props method on all
10810         contained objects.
10811         (group_ops): use standard props dialog creation routines.
10813         * lib/properties.c (prop_desc_lists_intersection): fix implementation
10814         of intersection -- I was using i++ instead of i-- in a for loop :(
10816         * objects/custom/custom.c (custom_register_objects): fix usage
10817         of dia_get_data_directory again.
10819         * lib/sheet.c: fix up use of dia_get_data_directory, so that we
10820         actually read the sheets.
10822 2000-02-06  Alexander Larsson  <alla@lysator.liu.se>
10824         Win32 port by Hans Breuer <Hans@Breuer.org>
10826         * app/Makefile.am:
10827         Remove DATADIR and LIBDIR defines.
10829         * lib/Makefile.am:
10830         Add dia_dirs.c and dia_dirs.h
10831         Added DATADIR and LIBDIR defines.
10833         * lib/dia_dirs.[ch]:
10834         New files for handling special directories.
10836         * app/app_procs.c:
10837         * app/commands.c:
10838         * lib/sheet.c:
10839         * objects/custom/custom.c:
10840         Fix warnings.  Use directory functions.
10842         * app/diagram.h:
10843         Add prototype for diagram_redraw_all.
10845         * app/diaunitspinner.c:
10846         * app/filedlg.c:
10847         * app/interface.c:
10848         * app/preferences.c:
10849         Fix warning.
10851         * app/load_save.c:
10852         Win32 doesn't have mkstemp and fchmod.
10854         * app/paginate_psprint.c:
10855         Win32 calls popen _popen and pclose _pclose.
10856         
10857         * app/arrow.c:
10858         Win32 calls finite _finite.
10860         * lib/color.h:
10861         Win32 needs to dllexport the color vars.
10863         * objects/GRAFCET/step.c:
10864         * objects/chronogram/chronoref.c:
10865         snprintf -> g_snprintf
10867 2000-02-05  James Henstridge  <james@daa.com.au>
10869         * lib/properties.c: more fixes so that it doesn't crash when using
10870         properties.  The undo/redo stuff also works!!
10872         * objects/flowchart/box.c (box_{describe, get, set}_props): test
10873         object where I have implemented the new properties interface
10874         complete with automatic properties dialog generation.
10876         * lib/properties.c (object_apply_props): fixed stupid error when
10877         creating the old_props array.  Also, it no longer frees the props
10878         array -- you will have to do that yourself.
10880 2000-02-04  James Henstridge  <james@daa.com.au>
10882         * app/properties.c (properties_apply): pass object_part to
10883         apply_properties.
10885         * lib/object.h (ApplyPropertiesFunc): added widget argument.
10887         * lib/lazyprops.h (PROPDLG_CREATE): ref and sink properties dialogs
10888         created this way as well.
10890         * objects/*/*.c: ref and sink the properties dialog window for each
10891         widget.  It can't rely on ref count being incremented by
10892         properties_show anymore.
10894         * app/properties.c (properties_show): don't ref the widget before
10895         removing it, or its ref count will increase each time you open the
10896         properties dialog.  Don't unparent the widget, as container_remove
10897         does that for us.
10899         * lib/object.h: fixed up prototypes for new object methods.
10901         * lib/properties.[ch]: added functions for automatically creating
10902         a properties dialog from the output of describe_props, get_props and
10903         set_props.
10904         (object_apply_props): apply properties and return an ObjectChange
10905         structure that can be used for undo.
10907 2000-02-03  Cyrille Chepelov  <chepelov@calixo.net>
10909         * objects/GRAFCET/transition.c: minor leak plugged.
10911         * sheets/GRAFCET.sheet:
10912         * objects/GRAFCET/pixmaps/condition.xpm: (NEW)
10913         * objects/GRAFCET/condition.c: (NEW) added a new object type, action 
10914         conditions.
10915         * objects/GRAFCET/Makefile.am: fixed incorrect dependencies, added
10916         new ones (for condition.c).
10917         * objects/GRAFCET/action.c: added connection points for the conditions.
10918         * samples/grafcet.dia: updated the sample to improve conformance to
10919         IEC 848 and take advantage of dia's new features.
10920         
10921         * lib/geometry.h: (point_get_normed) fixed a typo.
10923 2000-02-02  James Henstridge  <james@daa.com.au>
10925         * lib/object.h: added object functions describe_props, get_props and
10926         set_props.  Do type definitions so that object.h doesn't need to
10927         include properties.h, since properties.h includes object.h.
10929         * lib/properties.[ch]: more hacking.
10931         * po/de.po: updated po file.
10933 2000-01-30  James Henstridge  <james@daa.com.au>
10935         * configure.in: don't add flags to CFLAGS unconditionally.  Instead,
10936         check to see if the C compiler accepts the flag beforehand.
10938         * lib/properties.[ch]: start of properties code.
10940         * shapes/Contact/Makefile.am (SHAPES): fix up makefile.
10942 2000-01-30  Cyrille Chepelov  <chepelov@calixo.net>
10943         
10944         * sheets/GRAFCET.sheet:
10945         * sheets/GRAFCET/etapemc.xpm: (NEW)
10946         * sheets/GRAFCET/etapesp.xpm: (NEW)
10947         * objects/GRAFCET/step.c: Added the macro and
10948         sub-program call step types.
10950         * objects/GRAFCET/receptivity.[ch]: renamed to 
10951         objects/GRAFCET/boolequation.[ch]. 
10952         * objects/GRAFCET/transition.c: changed (Receptivity *) to 
10953         (BoolEquation *)
10955         * lib/connpoint_line.[ch]: 
10956         * objects/chronogram/chronoline.c:
10957         * objects/chronogram/chronoref.c:
10958         * objects/GRAFCET/vergent.c:
10959         * objects/standard/line.c:
10960         * objects/SADT/box.c: Minor CPL interface changes, factored out the
10961         point count adjustment code into the CPL object.
10962         
10963 2000-01-29  Alexander Larsson  <alla@lysator.liu.se>
10965         * app/render_libart.c:
10966         Added support for images and bezier curves.
10967         Only text/fonts missing now.
10969         * app/render_gdk.c:
10970         Removed old erronous comment.
10972 2000-01-29  Cyrille Chepelov <chepelov@calixo.net>
10974         * objects/chronogram/chronoline_event.c: removed references to
10975         lround(). Please don't insist, I'm already red of shame.
10976         
10977 2000-01-29  Alexander Larsson  <alla@lysator.liu.se>
10979         * app/render_libart.[ch]:
10980         * app/Makefile.am:
10981         Non-finished libart renderer.
10983         * acconfig.h:
10984         Added HAVE_LIBART flag
10986         * configure.in:
10987         Added libart probe
10989         * app/app_procs.c:
10990         Call gdk_rbg_init().
10992         * app/connectionpoint_ops.c:
10993         * app/disp_callbacks.c:
10994         * app/grid.c:
10995         * app/handle_ops.c:
10996         * app/magnify.c:
10997         * app/modify_tool.c:
10998         Change ddisp->renderer type from RendererGdk * to Renderer *
10999         Draw zoom and select rects in ddisp->canvas->window instead
11000         of ddisp->renderer->renderer->pixmap.
11002         * app/display.[ch]:
11003         Add aa_renderer to DDisplay, and  support for it.
11004         New function ddisplay_set_renderer() for changing renderer.
11005         Add ddisplay_transform_coords_double() function, used by aa renderer.
11006         Change ddisp->renderer type from RendererGdk * to Renderer *
11008         * app/menus.c:
11009         Add antialias to menu.
11010         
11011         * app/commands.[ch]:
11012         add view_aa_callback function
11013         Change ddisp->renderer type from RendererGdk * to Renderer *
11015         * lib/geometry.[ch]:
11016         Added IntRectangle and int_rectangle_union.
11018 2000-01-28  James Henstridge  <james@daa.com.au>
11020         * app/commands.h: removed prototypes.
11022         * app/commands.c: removed the functions that have been moved to
11023         filedlg.c.
11025         * app/filedlg.h: added new prototypes.
11027         * app/filedlg.c (file_open_callback): move open dialog to this
11028         file.  This implementation should remember the current directory
11029         between file loads.
11030         (file_save_as_callback): moved this dialog as well.
11031         (file_save_callback): moved this function here.
11033         * app/paginate_psprint.c (paginate_psprint): if not in fit to mode,
11034         align page boundaries to the origin.
11036         * app/diagram.c (diagram_update_extents): redraw the diagram if the
11037         scaling factor changes while updating the extents.  This is so the
11038         page breaks get redrawn correctly.
11040         * app/pagesetup.c (pagesetup_apply): added diagram_flush call when
11041         applying changes.
11043         * app/grid.c (grid_draw): draw page breaks as well as grid lines.
11044         For normal mode, use (0,0) as the origin.  For `fit to' mode, use
11045         the corner of the bounding box.
11047         * app/pagesetup.c (create_page_setup_dlg): load new paper attributes
11048         into page setup dialog.
11049         (pagesetup_apply): apply new `fit to' attributes to the diagram.
11051         * app/load_save.c (diagram_load): load new paper `fit to' attributes.
11052         (diagram_data_save): save `fit to' data.
11054         * lib/diagramdata.c (new_diagram_data): initialise `fit to' members.
11055         (data_update_extents): when in `fit to' mode, update scale factor
11056         when we update the extents.
11058         * lib/diagramdata.h (PaperInfo): added `fit to' members to PaperInfo
11059         structure.
11061         * .../.cvsignore: added some cvsignore files to quieten cvs.
11062         
11063         * app/pagesetup.c (pagesetup_changed): added code to change the
11064         scaling/fit to values as you change the options in the page setup
11065         dialog.  I haven't added code so that the fit to options are saved
11066         though.
11068         * app/diapagelayout.[ch]: changed the scaling portion of the widget
11069         to make it easier to set a `fit to' style scaling factor.
11071 2000-01-27 Cyrille Chepelov <chepelov@calixo.net>
11072         * lib/neworth_conn.[ch]: (NEW) Temporary (hopefully) fork of orth_conn,
11073         but connpoint_line-based, so that there's a connection point at the 
11074         middle of each segment. Currently only the SADT arrow uses this.
11076         * objects/SADT/* (NEW): SADT (both idf0 and idf1) support.
11077         
11078 2000-01-26 Cyrille Chepelov <chepelov@calixo.net>
11079         * lib/lazyprops.[ch]:(NEW) Added a bunch of macros for loading, 
11080         saving and editing of properties (and default properties). 
11081         See the new objects (GRAFCET, SADT, chonograms) for examples.
11082         For already too hairy stuff, see objects/chronogram/chronoline.c.
11084         * lib/connpoint_line.[ch] (NEW): This subobject manages a line of 
11085         evenly spaced connection points, which the user can add or remove at
11086         will. An object can own several connection point lines. See the SADT
11087         Box, or the GRAFCET vergents for examples.
11089         * lib/dummy_dep.h: added dependencies to new files. Told gcc to keep 
11090         quiet about unused stuff.
11092         * objects/GRAFCET (NEW):
11093         * samples/grafcet.dia (NEW):
11094         Added support for GRAFCET charts. 
11096         * objects/chronogram (NEW):
11097         * samples/chronograms.dia (NEW):
11098         Added support for chronograms (feature requested by Ronald L. Chichest;
11099         I found I'd use it often, too).
11101         * objects/standard/line.c: Replace the middle connectionpoint by 
11102         a whole connection point line, which defaults to one point (hint, 
11103         hint). New Line object menu to take advantage of this. 
11104         "Bothwards" compatibility is preserved (although you may loose 
11105         connections if you load a newer file in a older dia).
11107         * app/lineprops_area.c:
11108         * lib/arrows.[ch]:
11109         * lib/widgets.c: Added hollow and filled ellipse arrow head type. 
11110         (feature requested by Benjamin Kahn).
11111         Merged in Steffen Macke's slashed arrow head type.
11113         * app/Makefile.am (app/run_dia.sh actually):
11114         Added $DEBUGGER in front of dia's invocation, so that
11115         you can call "DEBUGGER=ddd app/run_dia.sh" (maybe naive, but useful).
11116         Added $(EFENCE) to app/dia's LDFLAGS, so that you can do 
11117         "EFENCE=-lefence" to link with Electric Fence.
11119         * configure.in: Made gcc do more aggressive optimisations on i386, and
11120         enabled warnings.
11121         
11122 2000-01-24  James Henstridge  <james@daa.com.au>
11124         * lib/geometry.[ch]: added inline versions of functions.  Used
11125         glib's G_INLINE_FUNC stuff, so it should still work on systems
11126         without inline funcs.
11128         * plug-ins/cgm/cgm.c (draw_ellipse, fill_ellipse): fixed up so that
11129         it outputs the correct element id for the ellipse objects.
11131 2000-01-24 Cyrille Chepelov <chepelov@calixo.net>
11133         * lib/object.[ch]: added object_add_connectionpoint_at, similar to
11134         object_add_handle_at. Message typo fixed.
11135         
11136         * lib/sheet.c (load_register_sheet):
11137         potential bug fixed (warning hunt).
11139         * objects/custom/custom.c (custom_object_load): disabled an assertion
11140         which made dia abort upon failure to load a shape file. Fixed a
11141         subsequent crash. 
11143         * objects/custom/shape_info.c (load_shape_info): Made the custom 
11144         shape load code ignore XML comments between <?xml ...?> and the 
11145         root object (mostly useful to put the emacs magic comments).
11146         
11147         * app/load_save.c: Made dia do backup copies of files when saving,
11148         and complain in case of failure.
11150 2000-01-24  Cyrille Chepelov  <chepelov@calixo.net>
11152         * AUTHORS: fixed my address (ISP thought it was a great idea to change
11153         the domain name)
11154         
11155         * configure.in:
11156         * shapes/Contact:
11157         * shapes/Contact/*:
11158         * sheets/Contact.sheet:
11159         * sheets/Makefile.am:
11160         Added support for Contact and LADDER charts.
11162         * dia.desktop: Added a French translation.
11163         
11164 2000-01-23  James Henstridge  <james@daa.com.au>
11166         * app/commands.c (help_about_callback): don't die if can't load
11167         logo image.
11169         * app/render_gdk.c (bezier_add_lines): sanity check to try to weed
11170         out NaN's when performing bezier curve subdivision.
11172         * objects/custom/custom_object.c: initialise memory of Custom structs
11173         to zero.
11175         * app/render_svg.c (draw_image): added image support to the XML
11176         output filter.  The image is just referenced, rather than being
11177         included inline, so if you copy the SVG file somewhere else, you
11178         may need to move the images or fix up the links.
11180         * plug-ins/cgm/cgm.c (draw_string): output a text colour element,
11181         so the text is not just displayed in black all the time.
11183 2000-01-15  Fredrik Hallenberg  <hallon@lysator.liu.se>
11185         * configure.in: fixed libpopt test so we wont try to build with
11186         too old libpopt.
11188 1999-12-18  Yuri Syrota  <rasta@renome.rovno.ua>
11190         * configure.in: Added "uk" to ALL_LINGUAS.
11192 1999-12-24  James Henstridge  <james@daa.com.au>
11194         * po/ru.po: updated russian translation from Valek Filippov.
11195         
11196         * app/render_svg.c (new_svg_renderer): make output use 19991203
11197         version of SVG DTD.  Use viewBox to set the extents of the view.
11199         * INSTALL (FONTS): updated locations of gnome-xml and imlib.  List
11200         ftp.gnome.org as the download.
11202         * TODO (TODO): weeded out completed todo items and added a few extra.
11204         * Makefile.am (EXTRA_DIST): added documentation to EXTRA_DIST.
11206         * doc/sheet.dtd: first stab at a DTD for the sheet files.  It would
11207         be good to get rid of the object/shape distinction and separate
11208         the custom shape code out from the main application.
11210         * objects/custom/README, diagram.dtd: moved to new doc directory.
11211         Renamed the custom shapes README to custom-shapes.  Also updated
11212         custom shape docs a bit and removed the section on sheet files, as
11213         that has changed a bit.
11215         * plug-ins/cgm/cgm.c (draw_image): give an error if the row length
11216         of the image data is larger than the maximum cell array.  I should
11217         add code to break scan lines down further in this case, but for now
11218         an error message is better than an infinite loop.
11220         * app/filedlg.c (file_export_ok_callback): show a dialog if we
11221         couldn't determine the export filter to use.
11223         * app/commands.c (help_about_callback): fixed up about box logo
11224         expose bug.  Now just use a GtkPixmap widget rather than a
11225         GtkDrawingArea and calling gdk_imlib_paste_image.
11227         * app/Makefile.am (EXTRA_DIST): added print stuff to extra dist,
11228         because automake does not always get things right.
11230         * configure.in: updated version number to 0.83.
11232         * app/preferences.c (prefs_save): 
11233         * app/render_svg.c (new_svg_renderer): "wt" is not a valid flag string
11234         for fopen.  Text is the default file mode anyway.
11236         * app/commands.c (file_save_as_dialog_ok_callback, file_new_callback): 
11237         * app/grid.c (grid_x_update, grid_y_update, grid_show_dialog): 
11238         * app/load_save.c (write_objects, write_connections): 
11239         * app/filedlg.c (file_export_ok_callback): 
11240         * lib/dia_xml.c (data_add_int, data_add_enum, data_add_real): 
11241         * lib/dia_xml.c (data_add_point, data_add_rectangle): 
11242         * lib/font.c (init_x11_font, font_get_gdkfont): changed calls to
11243         snprintf to calls to g_snprintf.
11245         * plug-ins/cgm/cgm.c (export_cgm): write the original dia file name
11246         as the picture name.
11248 1999-12-23  James Henstridge  <james@daa.com.au>
11250         * plug-ins/cgm/cgm.c (write_int32, write_int16): fixed up output of
11251         negative numbers.  This fixes the upside down text problem I was
11252         having previously.
11253         (draw_image): implemented the image code.  It will try to split the
11254         image data up into bands if it is too big to fit into a single
11255         cgm cell array element.  It will have problems if you try to insert
11256         an image wider than about 10,000 pixels though.
11258         * Makefile.am: use gnomedatadir for the files that need to be
11259         installed in gnome's datadir.  This is mainly to help people doing
11260         packages for weird setups.
11262 1999-12-22  James Henstridge  <james@daa.com.au>
11264         * plug-ins/cgm/cgm.c: added support for text.  Now only images and
11265         beziers are left to do.  The text seems to be the wrong way up
11266         still.  This is probably a problem with character orientation
11267         element, but I have used what the settings given in the standard.
11268         Other than this, the CGMs dia produces are readable (and displayable)
11269         by ralcgm and corel draw.
11270         (draw_string): subtract from the X coord rather than the Y coord for
11271         center and right aligned text.
11273         * plug-ins/cgm/cgm.c: a few fixups for the output.  Use REALSIZE as
11274         the size of a real number, and changed name of write_double to
11275         write_real.  Consider changing to fixed real encoding.  Also, now
11276         all element headers are correct.  Once the real number encoding is
11277         fixed, only text, beziers and images are left to do.
11279 1999-12-21  James Henstridge  <james@daa.com.au>
11281         * Makefile.am (SUBDIRS): recurse into plug-ins.
11283         * configure.in: add plug-ins directory makefiles to list.
11285         * plug-ins/cgm/cgm.c: start of cgm export filter.  Beziers and text
11286         not done yet.  Also, the output files are not quite correct.
11288         * app/render_eps.c (print_reencode_font): don't reencode the Symbol
11289         font.  It doesn't work if you do.
11291 1999-12-20  James Henstridge  <james@daa.com.au>
11293         * app/app_procs.c (app_init): don't use diagram_export_to_eps to
11294         export the files.  Instead, use filter_guess_export_filter to
11295         guess the correct format to save in and use the appropriate filter.
11296         It defaults to postscript for compatibility.
11298         * app/diagram.[ch] (diagram_export_to_eps): removed export to eps
11299         function.
11301         * app/commands.[ch]: removed export to eps functions.
11303         * app/menus.c: removed export to eps menu items.
11305         * app/app_procs.c: register new export filters.
11307         * app/load_save.[ch]: define dia native export filter.
11309         * app/render_eps.[ch]: define eps export filter.
11311         * lib/filter.h: added diafilename argument to the DiaExportFunc
11312         prototype.  This is useful for putting the source of the diagram
11313         into the output file for instance.
11315         * app/app_procs.c (app_init): register the SVG export filter.  Have
11316         to get EPS code converted to this API, and maybe also allow saving in
11317         DIA's native format from the export dialog.  In fact, it is now
11318         possible to load an export filter from a shared library and it will
11319         integrate into the interface correctly.
11321         * app/menus.c: removed references to the SVG renderer.
11323         * app/commands.[ch]: removed svg stuff.
11325         * app/diagram.[ch]: removed diagram_export_to_svg function.
11327         * app/render_svg.[ch]: added a DiaExportFilter structure for this
11328         renderer.
11330         * app/filedlg.[ch]: code for the new export diagram dialog.  Will
11331         probably move the open/save dialogs to this file as well.
11333 1999-12-19  James Henstridge  <james@daa.com.au>
11335         * lib/filter.[ch]: start of interface for generalised handling of
11336         filters.  I have only done code for export filters so far.  I still
11337         need to do the gui for this, and convert the current SVG and EPS
11338         filters to the new API.
11340         * lib/bezier_conn.c (bezierconn_copy): fix up copy operation.  We
11341         weren't setting the last handle correctly.  It was actually assigning
11342         to the wrong position in the handles array, so the last handle was
11343         left as NULL, which caused the segfault.
11345         * objects/standard/image.c (image_copy): modified routine so that
11346         it just adds a reference to the DiaImage structure in the new image
11347         object.  This seems to have cleared up the problems with copying
11348         image objects.
11350         * dia.spec: spec file additions from John Gotts.
11352 1999-12-12  James Henstridge  <james@daa.com.au>
11354         * configure.in (GNOME_LIBS): updated version number to 0.82.  0.82
11355         has not been released yet though.
11357         * Makefile.am (EXTRA_DIST): distribute diagram.dtd.
11359         
11360         The following based on a patch from Lars Clausen:
11361         
11362         * objects/standard/bezier.c (bezierline_move_handle): when performing
11363         the initial drag of the bezierline, move the control points to keep
11364         the line straight.
11366         * lib/bezier_conn.c (bezierconn_add_segment): when adding a segment,
11367         make the new control points a bit closer to the major point.
11369         * app/create_object.c (create_object_motion): use HANDLE_MOVE_CREATE
11370         as the reason for the move.
11371         (create_object_button_release): use HANDLE_MOVE_CREATE_FINAL as the
11372         move reason.
11374         * lib/handle.h: new handle move reasons.
11376 1999-12-09  James Henstridge  <james@daa.com.au>
11378         * dia.spec: include the new files in RPMs.
11380         * Makefile.am: install these new files.
11382         * dia.keys.in: file describing actions and icon for dia diagrams for
11383         use in the gnome file manager.
11384         
11385         * dia.mime: a file defining the application/x-dia-diagram mime type.
11386         
11387         * dia-diagram.png: an icon for dia diagrams.
11389 1999-12-08  James Henstridge  <james@daa.com.au>
11391         * plug-ins/python/pydia-diagram.c: added heaps of new methods.
11393         * plug-ins/python/pydia-display.[ch]: wrapper for display.
11395         * objects/standard/ellipse.c: applied Lars's patch to optionally not
11396         draw the background of the ellipse.
11398         * app/load_save.c (read_connections): do some sanity checking on the
11399         handle and connection point numbers before performing the object
11400         connection.
11402         * lib/bezier_conn.c (bezierconn_load): give the correct number of
11403         handles when loading a BezierConn.
11405 1999-12-07  Kjartan Maraas  <kmaraas@online.no>
11407         * sheets/*.sheet: Finished Norwegian translations.
11408         
11409 1999-12-07  James Henstridge  <james@daa.com.au>
11411         * plug-ins/python/diamodule.c (PyDia_Load): load diagram function.
11412         (PyDia_GetObjectType): find object type function.
11414         * plug-ins/python/pydia-diagram.c (PyDiaDiagram_Save): added a save
11415         method for diagrams.
11417         * plug-ins/python/pydia-object.c: added methods for DiaObject and
11418         DiaObjectType.
11420         * AUTHORS: added Lars and Cyrille to the authors file.
11422         * objects/standard/bezier.c (bezierline_add_segment_callback): place
11423         new point correctly.
11425         * lib/bezier_conn.h (bezierconn_closest_segment): fixed prototype.
11427         * lib/bezier_conn.c: applied Lars's patch for placement of the new
11428         point when adding a segment to a BezierConn.
11430 1999-12-06  James Henstridge  <james@daa.com.au>
11432         * plug-ins/python/test.py: test script for the python plug-in.
11434         * plug-ins/python/python.c: this file contains the plug-in startup
11435         code for the python plugin.  Right now, it just initialises the
11436         dia module and executes a script.
11438         * objects/standard/polyline.c (polyline_draw): fix start arrow size.
11440         * objects/standard/bezier.c (bezierline_draw): draw control lines for
11441         bezier curve if we are using an interactive renderer (ie. only if
11442         displaying to the screen).
11444         * lib/bezier_conn.[ch] (bezierconn_draw_control_lines): function
11445         to draw control lines on to a bezier curve.  Based on implementation
11446         from Lars.
11448         * objects/standard/bezier.c (bezierline_delete_segment_callback):
11449         calculate segment number using closest_segment rather than
11450         closest_handle.  Sometimes the closest handle is part of a different
11451         segment.
11452         (bezierline_draw): use correct size for start arrow.
11454         The next few entries are from Peter Moulder <reiter@netspace.net.au>:
11455         * lib/geometry.c (distance_line_point): added notes to documentation
11456         in comment.
11457         * app/object_ops.c (object_list_align_v): 
11458         (object_list_align_h): fix of by one error when calculating free space
11459         for equal distance alignment.
11460         * app/menus.c (objects_align_h, objects_align_v): include align
11461         adjacent menu items in the gnome version of the menus.
11462         * app/diagram.c (diagram_update_menu_sensitivity): set sensitivity on
11463         align adjacent menu items correctly.
11466         * lib/dummy_dep.h (dummy_dep): added bezierconn to dummy dependency
11467         table.
11469         * objects/standard/bezier.c: converted bezierline to use BezierConn.
11470         Still a few bugs.  It crashes on deleting line segments.
11472         * lib/Makefile.am (libdia_a_SOURCES): added BezierConn to libdia.
11474 1999-12-05  James Henstridge  <james@daa.com.au>
11476         * lib/bezier_conn.[ch]: start of BezierConn object
11478         * app/interface.c: add bezierline to toolbox.
11480         * objects/standard/standard.c: initialise bezierline.
11482         * objects/standard/bezier.c: new object from Lars R. Clausen.  I have
11483         made a few modifications to get it working nicely.  It still needs
11484         a bit of work though.  Maybe create a BezierConn object in lib.
11486 1999-12-02  James Henstridge  <james@daa.com.au>
11488         * plug-ins/python/pydia-*.c: fixed compile errors in these files.
11489         
11490         * plug-ins/python/Makefile.am: tried building everything.  It is
11491         building as a library at the moment.  I will have to convert it
11492         to a libtool library and add some initialisation code.
11493         
11494         * plug-ins/python/diamodule.c: start of the dia module, using the
11495         other object wrappers.  Not complete.
11497 1999-12-01  James Henstridge  <james@daa.com.au>
11499         * plug-ins/python/pydia-object.c (PyDiaObject_GetAttr): implement
11500         the handles and connections attributes.
11502         * plug-ins/python/pydia-layer.c: added functions that use
11503         ConnectionPoint's.
11505         * plug-ins/python/pydia-handle.[ch]: wrapper for Handle's.
11507         * plug-ins/python/pydia-cpoint.[ch]: wrapper for ConnectionPoint's.
11509         * plug-ins/python/pydia-*.[ch]: starts of python scripting plug-in.
11510         I am currently wrapping the basic elements in the diagram in python
11511         objects -- nothing to see or play with yet.
11513 1999-11-30  Alexander Larsson  <alla@lysator.liu.se>
11515         * AUTHORS:
11516         * HACKING:
11517         James Henstridge <james@daa.com.au> is now the maintainer of Dia.
11519 1999-11-29  Alexander Larsson  <alla@lysator.liu.se>
11521         * configure.in:
11522         * po/ru.po:
11523         Added russian translation from Valek Filippov <frob@df.ru>
11525 1999-11-24  James Henstridge  <james@daa.com.au>
11527         * sheets/UML/*: 
11528         * sheet/ER/*: moved extra sheet pixmaps back to separate dirs as
11529         discussed with Alex.  Also added extra makefiles so that make install
11530         works correctly.
11532 1999-11-23  Alexander Larsson  <alla@lysator.liu.se>
11534         * app/preferences.[ch]:
11535         * app/display.c:
11536         Added snap to grid preference.
11537         Patch from Michael Leslie <mles@springboardwireless.com>
11539 1999-11-21  Alexander Larsson  <alla@lysator.liu.se>
11541         * app/load_save.c:
11542         * lib/dia_xml.c:
11543         * lib/sheet.c:
11544         * lib/text.c:
11545         * objects/custom/shape_info.c:
11546         All strings returned by libxml must be freed with free, not
11547         g_free, or there will be problems if you use memory debugging
11548         in glib.
11549         
11550 1999-11-21  Alexander Larsson  <alla@lysator.liu.se>
11552         * app/create_object.[ch]:
11553         * app/menus.c:
11554         * app/tool.[ch]:
11555         * app/commands.[ch]:
11556         * app/pixmaps.h:
11557         * app/interface.[ch]:
11558         Reverted the tool menu patch. It has some 'issues'.
11559         I liked it though, so it'll probably return.
11561 1999-11-21  Alexander Larsson  <alla@lysator.liu.se>
11563         Fixed a lot of memory leaks. Thanks to Bruce Mitchener
11564         <bruce@cybersight.com> for some purify runs and analysis.
11565         Also a great thank you to Owen Taylor for creating MemProf, a
11566         free memory leak detector that was used to find and verify a
11567         lot of these fixes.
11568         
11569         * app/diagram.c:
11570         * app/paginate_psprint.c:
11571         * app/render_eps.[ch]:
11572         * app/render_svg.[ch]:
11573         Free renderers.
11575         * app/interface.c:
11576         Don't add a reference to ddisp->shell. Why was this done in
11577         the first place?
11579         * app/load_save.c:
11580         * lib/dia_xml.c:
11581         * lib/sheet.c:
11582         * lib/text.c:
11583         Free all strings returned from xmlGetProp
11585         * app/modify_tool.c:
11586         Plug leak.
11588         * objects/custom/custom.c:
11589         Use closedir() after opendir().
11591         * objects/custom/shape_info.c:
11592         User g_free() instead of "if (tmp) free(tmp)".
11594         * sheets/ER.sheet:
11595         Add newline at end of file.
11596         
11598 1999-11-20  Alexander Larsson  <alla@lysator.liu.se>
11600         Based on patch from Patrick Reynolds <reynolds@cs.duke.edu>
11601         Adds tool menu and keyboard shortcuts.
11603         * app/create_object.[ch]:
11604         Use tool_set() instead of tool_reset().
11605         create_create_object_tool() takes extra type argument
11607         * menus.c:
11608         Add tools menu.
11609         
11610         * tool.[ch]:
11611         Moved tool_data here, export it.
11612         Add separate tool type for all create objects tools.
11613         new functions tool_set().
11615         * commands.[ch]:
11616         New callback tool_set_callback.
11618         * pixmaps.h:
11619         Moved some pixmaps to interface.c.
11620         
11621         * interface.[ch]:
11622         Remove tool_data array (moved to tool.c).
11623         Use the tool_data from tool.c.
11624         Remove modify_tool_button global var.
11625         
11626 1999-11-20  Alexander Larsson  <alla@lysator.liu.se>
11628         Patch from Patrick Reynolds <reynolds@cs.duke.edu>
11629         
11630         * app/app_procs.c:
11631         Interprets command-line arguments as files to open even when
11632         HAVE_POPT is not defined.
11634         * app/magnify.c:        
11635         Shift-clicking when zooming zooms out, like the Gimp.
11637         * app/menus.c:
11638         Has hotkeys for zoom-100% and snap-to-grid.
11640 1999-11-17  James Henstridge  <james@daa.com.au>
11642         * app/scroll_tool.c (scroll_motion): fixed shift style scrolling so
11643         that it is not jumpy.
11645         * app/Makefile.am (EXTRA_DIST): added extra files to extra dist list.
11647         * app/scroll_tool.c (scroll_motion): added `grabbing hand' type
11648         scrolling by pressing the shift key when using the scroll tool.
11650         * sheets/Makefile.am: fixed makefile so that install actually works
11651         if the directories $(pkgdatadir)/sheets/UML and $(pkgdatadir)/sheets/ER
11652         don't exist.
11653         (SHEETS): install Circuit.sheet
11655 1999-11-15  Alexander Larsson  <alla@lysator.liu.se>
11656         Patch from Cyrille Chepelov <chepelov@rmcnet.fr>
11658         * sheets/Circuit.sheet:
11659         * sheets/ER.sheet:
11660         * sheets/FS.sheet:
11661         * sheets/Flowchart.sheet:
11662         * sheets/UML.sheet:
11663         * sheets/network.sheet:
11664         * sheets/sybase.sheet:
11665         Changed name space
11667         * sheets/Circuit.sheet:
11668         added some missing French translations
11670         * lib/sheet.c:
11671         killed the temporary sheet namespace
11673         * objects/custom/custom.c:
11674         obsolete comment cleaned up
11676 1999-11-12  Alexander Larsson  <alla@lysator.liu.se>
11678         * configure.in:
11679         * po/pt.po:
11680         Added portugese translation from Pedro Morais
11681         <pmmm@rnl.ist.utl.pt>
11683 1999-11-11  Alexander Larsson  <alla@lysator.liu.se>
11685         Changed all sheets to be specified in xml.
11686         All sheet objects removed from the C code.
11687         Patch from Cyrille Chepelov <chepelov@rmcnet.fr>
11688         
11689         * Makefile.am:
11690         * configure.in:
11691         Adding shapes dir.
11692         Updated version to 0.81cvs.
11693         
11694         * app/Makefile.am:
11695         Update run_dia.sh with sheet-dir.
11696         
11697         * app/app_procs.c:
11698         Load all sheets on startup.
11699         Create sheet directory first time.
11700         Don't call custom_register_sheets().
11702         * lib/Makefile.am:
11703         Add sheetdir define
11705         * lib/custom.h:
11706         Remove custom_register_sheets().
11708         * lib/sheet.[ch]:
11709         Add sheet loading code.
11711         * sheet/Circuit.sheet:
11712         * sheet/ER.sheet:
11713         * sheet/FS.sheet:
11714         * sheet/Flowchart.sheet:
11715         * sheet/UML.sheet:
11716         * sheet/network.sheet:
11717         * sheet/sybase.sheet:
11718         Added sheet files.
11720         * sheet/ER/weakentity.xpm:
11721         * sheet/UML/aggregation.xpm
11722         * sheet/UML/umlclass_template.xpm
11723         Added sheet pixmaps.
11724         These are moved from their old places.
11726         * sheet/.cvsignore:
11727         Shut up cvs.
11729         * objects/*/*.c:
11730         Removed sheet objects and sheet registration.
11731         
11732         * objects/ER/Makefile.am:
11733         * objects/ER/pixmaps/weakentity.xpm:
11734         * objects/UML/Makefile.am:
11735         * objects/UML/pixmaps/aggregation.xpm:
11736         * objects/UML/pixmaps/umlclass_template.xpm:
11737         Removed alternative pixmaps. (Moved to sheet).
11739         * objects/custom/Makefile.am:
11740         * objects/custom/load_sheet.[ch]:
11741         Removed old sheet loading code.
11742         
11743         * objects/custom/custom.c:
11744         Load all shapes instead of sheets.
11745         Removed custom_register_sheets().
11747         * objects/custom/custom_object.c:
11748         Added debug code.
11750         * objects/custom/shape_info.[ch]:
11751         Added shape_info_getbyname().
11753         * objects/flowchart/Makefile.am:
11754         * objects/flowchart/collate.shape            
11755         * objects/flowchart/delay.shape              
11756         * objects/flowchart/display.shape            
11757         * objects/flowchart/document.shape           
11758         * objects/flowchart/extract.shape            
11759         * objects/flowchart/flowchart.c              
11760         * objects/flowchart/intstorage.shape         
11761         * objects/flowchart/magdisk.shape            
11762         * objects/flowchart/magdrum.shape            
11763         * objects/flowchart/magtape.shape            
11764         * objects/flowchart/manualinput.shape        
11765         * objects/flowchart/manualop.shape           
11766         * objects/flowchart/merge.shape              
11767         * objects/flowchart/offlinestore.shape       
11768         * objects/flowchart/offpageconn.shape        
11769         * objects/flowchart/or.shape                 
11770         * objects/flowchart/predefdproc.shape        
11771         * objects/flowchart/preparation.shape        
11772         * objects/flowchart/punchedcard.shape        
11773         * objects/flowchart/punchedtape.shape        
11774         * objects/flowchart/sort.shape               
11775         * objects/flowchart/sumjunction.shape        
11776         * objects/flowchart/terminal.shape           
11777         * objects/flowchart/transaction.shape        
11778         * objects/flowchart/transmittape.shape       
11779         * objects/flowchart/pixmaps/collate.xpm      
11780         * objects/flowchart/pixmaps/delay.xpm        
11781         * objects/flowchart/pixmaps/display.xpm      
11782         * objects/flowchart/pixmaps/document.xpm     
11783         * objects/flowchart/pixmaps/extract.xpm      
11784         * objects/flowchart/pixmaps/intstorage.xpm   
11785         * objects/flowchart/pixmaps/magdisk.xpm      
11786         * objects/flowchart/pixmaps/magdrum.xpm      
11787         * objects/flowchart/pixmaps/magtape.xpm      
11788         * objects/flowchart/pixmaps/manualinput.xpm  
11789         * objects/flowchart/pixmaps/manualop.xpm     
11790         * objects/flowchart/pixmaps/merge.xpm        
11791         * objects/flowchart/pixmaps/offlinestore.xpm 
11792         * objects/flowchart/pixmaps/offpageconn.xpm  
11793         * objects/flowchart/pixmaps/or.xpm           
11794         * objects/flowchart/pixmaps/predefdproc.xpm  
11795         * objects/flowchart/pixmaps/preparation.xpm  
11796         * objects/flowchart/pixmaps/punchedcard.xpm  
11797         * objects/flowchart/pixmaps/punchedtape.xpm  
11798         * objects/flowchart/pixmaps/sort.xpm         
11799         * objects/flowchart/pixmaps/sumjunction.xpm  
11800         * objects/flowchart/pixmaps/terminal.xpm     
11801         * objects/flowchart/pixmaps/transaction.xpm  
11802         * objects/flowchart/pixmaps/transmittape.xpm 
11803         Moved shapes and their pixmaps to shapes/flowchart
11805         * shapes/Circuit/Makefile.am:
11806         * shapes/Circuit/index.sheet:
11807         Removed index.sheet.
11808         
11809         * shapes/Makefile.am:
11810         * shapes/flowchart/Makefile.am:
11811         * shapes/flowchart/*.shape:
11812         * shapes/flowchart/*.xpm:
11813         Added flowchart shapes. (Moved from objects/flowchart)
11814         
11816 1999-11-07  Fredrik Hallenberg  <hallon@lysator.liu.se>
11818         * app/app_procs.c: Fixed popt stuff.
11820 1999-11-01  James Henstridge  <james@daa.com.au>
11822         * shapes/Circuit/[hv]led_de.{shape,xpm}: new circuit shapes from
11823         Andreas Scherf.
11825 1999-10-31  Alexander Larsson  <alla@lysator.liu.se>
11827         * dia.spec:
11828         * configure.in:
11829         Update version to 0.81.
11830         
11831         * NEWS:
11832         Update with news for 0.81.
11833         
11834         * shapes/Circuit/*:
11835         * shapes/Circuit_eu/*:
11836         Moved european circuit objects to Circuit sheet.
11838 1999-10-31  Alexander Larsson  <alla@lysator.liu.se>
11839         
11840         * lib/diagramdata.[ch]:
11841         Added layer_set_object_list() function.
11843         * app/undo.[ch]:
11844         Added support for undo of reordered objects.
11845         Fix the undo of delete to keep the right order on undo.
11846         
11847         * app/diagram.c:
11848         changed loop to object_add_updates_list() calls.
11849         Added undo support to bring to front/back.
11851         * app/disp_callbacks.c:
11852         * app/paginate_psprint.c:
11853         Remove warnings.
11855 1999-10-30  Alexander Larsson  <alla@lysator.liu.se>
11857         This plugs some leaks. Thanks to
11858         Bruce Mitchener <bruce@cybersight.com> for running
11859         Dia through purify for me.
11860         
11861         * app/app_procs.c:
11862         Free displays and diagrams on exit.
11864         * app/modify_tool.c:
11865         Free gc when freeing tool.
11867         * lib/diagramdata.c:
11868         Free layer name.
11869         
11870         * app/display.c:
11871         Free update and display lists when destroying display.
11872         
11873         * lib/diagramdata.c:
11874         Don't leak layer name.
11876         * objects/custom/load_sheet.c: 
11877         * objects/custom/shape_info.c:
11878         Free loaded xml documents.
11880 1999-10-28  Alexander Larsson  <alla@lysator.liu.se>
11882         * app/commands.c:
11883         * app/object_ops.[ch]:
11884         Add undo handling to alignment ops.
11885         Based partially on patch by Dan Cohn <dan@internap.com>.
11887         * objects/standard/image.c (image_move_handle):
11888         Don't divide by zero for small images.
11889         Patch by Dan Cohn <dan@internap.com>.
11891         * objects/UML/class.c (umlclass_destroy): 
11892         * objects/custom/custom_object.c (custom_destroy):
11893         Don't free connectionpoints before calling element_destroy
11894         which unconnects them.
11896 1999-10-26  Alexander Larsson  <alla@lysator.liu.se>
11898         * objects/custom/custom_object.c: 
11899         Load and save padding too. Fixes strange load crashes.
11901         * app/group.c (group_destroy):
11902         Don't unconnect already freed connectionpoints when
11903         destroying group. Probably fixes bug reported by
11904         Elliot Lee <sopwith@redhat.com>.
11906         * app/render_gdk.c:
11907         Don't crash on zero-size (broken) bezier curves.
11908         Different sort of fix. This should work on closed bezier curves
11909         too.
11911         * objects/standard/textobj.c:
11912         Activate default properties dialog for Text objects.
11914         * app/render_eps.c: 
11915         * app/load_save.c:
11916         * app/preferences.c:
11917         * app/render_svg.c:
11918         fopen files in binary or text mode.
11920 1999-10-26  Alexander Larsson  <alex@cendio.se>
11922         * app/render_gdk.c (bezier_add_lines):
11923         Don't crash on zero-size (broken) bezier curves.
11924         Fixes a crashing bug.
11926 1999-10-25  James Henstridge  <james@daa.com.au>
11928         * app/Makefile.am (run_dia.sh): allow dia to find internal shape files
11929         before it is installed.
11931         * objects/flowchart/flowchart.c: use relative paths to find shapes.
11933         * objects/custom/custom.c (custom_object_load): take file names
11934         relative to $(pkgdatadir)/shape-internal, and check an environment
11935         variable for an alternative directory.
11937         * app/...: added copyright messages to the top of my new code.
11939         * app/paginate_psprint.c: some general clean ups.  Also, give an error
11940         dialog if we can't open the command or output file for writing.
11942         * app/diapagelayout.c (dia_page_layout_set_orientation): fixed
11943         function so it would set orientation to landscape correctly.
11945         * app/paginate_psprint.c: use the paper settings that come with
11946         the diagram.  Also implemented landscape printing.
11948         * app/render_eps.c (new_psprint_renderer): use diagram paper metrics
11949         in PS header.
11951         * app/commands.[ch] (file_pagesetup_callback): added callback for
11952         the page setup dialog.
11954         * app/menus.c: added page setup menu item.
11956         * app/pagesetup.[ch]: implementation of the page setup dialog.
11958         * app/diapagelayout.[ch]: added accessors for the scaling factor.
11959         
11960         * app/load_save.c (diagram_load): load paper information from save
11961         file.
11962         (diagram_save): save the paper info.
11964         * lib/diagramdata.c (new_diagram_data): initialise paper info section
11965         of DiagramData structure.
11966         (diagram_data_destroy): free the paper name.
11968         * lib/diagramdata.h: added a paper member to the DiagramData structure
11969         that holds the page layout info for a diagram.
11971 1999-10-21  Alexander Larsson  <alla@lysator.liu.se>
11973         * objects/flowchart/box.c:
11974         * objects/flowchart/ellipse.c:
11975         * objects/flowchart/diamond.c:
11976         * objects/flowchart/parallelogram.c:
11977         Load and save padding too. Fixes strange load crashes.
11979 1999-10-21  Alexander Larsson  <alla@lysator.liu.se>
11981         * app/app_procs.c (name_is_lib):
11982         .dll, .sl and .so.0.0.0 are also libraries.
11984 1999-10-20  James Henstridge  <james@daa.com.au>
11986         * configure.in: added extra makefile.
11987         
11988         * shapes/Circuit_eu/*: a new set of european circuit shapes from
11989         Andreas Scherf <scherfa@fh-trier.de>.  Made a few small modifications
11990         (added fuses to makefile, fill the area of some of the components).
11992 1999-10-19  Alexander Larsson  <alla@lysator.liu.se>
11994         * lib/Makefile.am:
11995         * app/Makefile.am: 
11996         Add GDK_IMLIB_CFLAGS to includes.
11997         Changed --export-dynamic to -export-dynamic
11999         * lib/widgets.c:
12000         * objects/UML/message.c:
12001         Removed c++ comment.
12003         * lib/render_store.[ch]:
12004         Don't use empty structure. That is not Ansi C.
12006 1999-10-19  James Henstridge  <james@daa.com.au>
12008         * app/diapagelayout.c (dia_page_layout_init): use DiaUnitSpinner's for
12009         the margin entries, as they allow interpretation of units.
12010         (paper_size_change): display the current page dimensions.
12012         * app/diaunitspinner.[ch]: a widget derived from the standard
12013         GtkSpinButton that tries to take units into account.  So if you enter
12014         "1in" into the entry, it will convert it to 2.54cm.
12016 1999-10-18  Alexander Larsson  <alla@lysator.liu.se>
12018         * app/app_procs.c:
12019         Removed include of dlfcn.h
12021 1999-10-18  James Henstridge  <james@daa.com.au>
12023         * app/diapagelayout.c (paper_size_change, orient_changed): set upper
12024         bound on margin widths.  It is set to the paper width/height.
12026         * objects/flowchart/diamond.c (diamond_distance_from): fixed distance
12027         routine for the diamond.  This bug was found and fixed by Daniel Wang
12028         <danwang@CS.Princeton.EDU>
12030 Sun Oct 17 19:46:36 1999  ape@gandalf.spacetec.no  (Asbjorn Pettersen)
12032         * app/commands.c: Add <sys/types.h> before <sys/stat.h> to
12033         remove warning (OS/2 version).
12035 1999-10-17  Alexander Larsson  <alla@lysator.liu.se>
12037         * README:
12038         Put a pointer to objects/custom/README.
12039         
12040 1999-10-17  Alexander Larsson  <alla@lysator.liu.se>
12042         * dia.spec:
12043         Updated version to 0.80
12045         * configure.in:
12046         Updated version to 0.80cvs
12048 1999-04-08  Alexander Larsson  <alla@lysator.liu.se>
12050         * Released Dia 0.80
12051         Tag called DIA_0_80
12052         
12053 1999-10-17  Fredrik Hallenberg  <hallon@lysator.liu.se>
12055         * app/Makefile.am
12056         * lib/Makefile.am
12057         * objects/UML/Makefile.am
12058         * objects/ER/Makefile.am
12059         * objects/network/Makefile.am
12060         * objects/standard/Makefile.am
12061         * objects/FS/Makefile.am
12062         * objects/sybase/Makefile.am
12063         * objects/flowchart/Makefile.am
12064         * objects/custom/Makefile.am
12065         Added -I$(top_srcdir)/intl which is needed for
12066         --with-included-gettext.
12068         * POTFILES.in
12069         Updated.
12070         
12071         * po/sv.po
12072         Updated swedish translation.
12074 1999-10-16  Alexander Larsson  <alla@lysator.liu.se>
12076         * configure.in:
12077         Updated version number to 0.80.
12079         * KNOWN_BUGS:
12080         New file.
12082         * TODO:
12083         Updated. Moved bugs to KNOWN_BUGS.
12085         * NEWS:
12086         Updated with 0.80 release notes.
12087         
12088 1999-10-16  Alexander Larsson  <alla@lysator.liu.se>
12089         
12090         * lib/orth_conn.c:
12091         For backwards compatibility, make sure handle 0 and 1 are the
12092         first and last handle. Fixes compatibility with 0.41, breaks
12093         compatibility with cvs version.
12094         Fixed bug in undo/redo of adding deleting endpoint segments
12095         when the endpoint was connected.
12096         Start OrthConn objects with three segments.
12098 1999-10-16  James Henstridge  <james@daa.com.au>
12100         * objects/custom/custom_object.c (custom_update_data): changed
12101         resizing behaviour a bit so that shapes don't grow huge when you try
12102         to resize them to smaller than the size required by the text box.
12103         Also, now shapes will not grow with fixed aspect ratio when you enter
12104         text into them unless the shape has the fixed aspect ratio flag set.
12106 1999-10-15  James Henstridge  <james@daa.com.au>
12108         * objects/flowchart/flowchart.c: add new shapes to flowchart sheet.
12110         * object/flowchart/pixmaps/...: corresponding pixmaps for new shapes.
12112         * objects/flowchart/magdrum.shape: 
12113         * objects/flowchart/offlinestore.shape: 
12114         * objects/flowchart/punchedtape.shape: 
12115         * objects/flowchart/transmittape.shape: 
12116         * objects/flowchart/punchedcard.shape: new shapes.
12118         * objects/flowchart/flowchart.c: add new shapes to flowchart sheet.
12120         * object/flowchart/pixmaps/...: corresponding pixmaps for new shapes.
12122         * objects/flowchart/collate.shape:
12123         * objects/flowchart/delay.shape:
12124         * objects/flowchart/extract.shape:
12125         * objects/flowchart/intstorage.shape:
12126         * objects/flowchart/magdisk.shape:
12127         * objects/flowchart/magtape.shape:
12128         * objects/flowchart/merge.shape:
12129         * objects/flowchart/or.shape:
12130         * objects/flowchart/sort.shape:
12131         * objects/flowchart/sumjunction.shape: new shapes.
12133 1999-10-15  Alexander Larsson  <alla@lysator.liu.se>
12135         * TODO (BUGS):
12136         Added bug:
12137         Entering an erronous command as print command
12138         crashes dia.
12140         * app/paginate_psprint.c:
12141         Save all print dialog values for next time.
12142         
12143         * app/Makefile.am:
12144         Remove custom lib from DIA_LIB_PATH.
12146 1999-10-14  James Henstridge  <james@daa.com.au>
12148         * objects/flowchart/flowchart.c: add new shapes to flowchart sheet.
12150         * object/flowchart/pixmaps/...: corresponding pixmaps for new shapes.
12151         
12152         * objects/flowchart/offpageconn.shape: 
12153         * objects/flowchart/manualop.shape: 
12154         * objects/flowchart/preparation.shape: 
12155         * objects/flowchart/manualinput.shape: 
12156         * objects/flowchart/predefdproc.shape: 
12157         * objects/flowchart/terminal.shape: new shapes in the flowchart sheet.
12159 1999-10-13  James Henstridge  <james@daa.com.au>
12161         * app/diapagelayout.[ch]: added accessors to paper information.  The
12162         widget should be just about complete now.
12164         * app/diapagelayout.[ch]: fleshed out the page setup widget a bit more.
12165         It actually does something now.
12167 1999-10-12  James Henstridge  <james@daa.com.au>
12169         * app/pixmaps/portrait.xpm, app/pixmaps/landscape.xpm: support pixmaps
12170         for the page layout widget.
12172         * app/diapagelayout.[ch]: start of page layout widget.  Not actually
12173         built yet as it is not complete.
12175         * objects/flowchart/flowchart.c: added new shapes to sheet.
12177         * objects/flowchart/display.shape:
12178         * objects/flowchart/transaction.shape: new shapes.
12180         * AUTHORS: added my name to the spec file.
12182         * dia.spec: include the dia desktop entry to the spec file.
12184         * Makefile.am: install the dia.desktop file.
12186         * dia.desktop: added a gnome desktop entry so you can start dia
12187         from the gnome panel menu.
12189 1999-10-11  James Henstridge  <james@daa.com.au>
12191         * objects/custom/custom_object.c:
12192         * objects/custom/shape_info.c: warning fixes.
12194         * objects/flowchart/document.shape: a shape file for the `document'
12195         flowchart shape.
12197         * lib/custom.h: new header with the custom shape prototypes.
12199         * app/app_procs.c: register custom objects as well.
12200         (register_objects_in): close shared libraries if they don't load
12201         correctly, and call g_module_make_resident on libraries that load
12202         correctly.
12204         * app/Makefile.am (dia_LDADD): added libcustom_objects.a to link list.
12206         * objects/custom/custom.c: removed get_version, added custom_ prefix
12207         to register_objects and register_sheets.
12209         * objects/custom/Makefile.am: converted to a normal library.
12211 1999-10-10  Alexander Larsson  <alla@lysator.liu.se>
12213         * app/lineprops_area.c:
12214         * app/render_svg.c:
12215         * lib/objchange.c:
12216         * objects/custom/shape_info.c:
12217         * objects/flowchart/box.c:
12218         * objects/flowchart/diamond.c:
12219         * objects/flowchart/ellipse.c:
12220         * objects/flowchart/parallelogram.c:
12221         * objects/network/flash.c:
12222         * objects/network/scead-plug.c:
12223         * objects/sybase/client.c:
12224         Removed -Wall warnings.
12225         
12226         * objects/network/bus.c:
12227         Removed unused functions.
12229         * objects/FS/flow-ortho.c:
12230         * objects/FS/flow-poly.c:
12231         * objects/FS/flow.c:
12232         * objects/FS/function.c:
12233         
12234         Implemented "non-implemented" undo for FS objects.
12235         Now at least it won't crash.
12236         
12237 1999-10-10  Alexander Larsson  <alla@lysator.liu.se>
12239         * objects/network/bus.c:
12240         Implemented undo.
12241         Handles are now added and removed using the object menu.
12242         Default to 6 handles instead of 10.
12243         Changed name from "Standard - Bus" to "Network - Bus". Kept old
12244         name for backwards compatibility.
12246         * objects/network/network.c:
12247         Changed name from "Standard - Bus" to "Network - Bus". Kept old
12248         name for backwards compatibility.
12250         * app/properties.[ch]:
12251         * app/undo.c:
12252         Update properties in properties dialog if the shown object
12253         is part of and ObjectChange (undo or redo).
12255         * lib/poly_conn.c:
12256         Remove old known bugs list.
12258         * objects/UML/class_dialog.c:
12259         Removed debug printf's.
12261 1999-10-10  James Henstridge  <james@daa.com.au>
12263         * objects/custom/custom.c (custom_object_load): new function that
12264         provides a nice entry point to the custom shape code for when it
12265         gets used by other libraries.
12267         * configure.in: removed 11 makefiles from AC_OUTPUT list.  This
12268         speeds builds up a bit.
12270         * */Makefile.am (EXTRA_DIST): include pixmaps in distribution.
12271         (SUBDIRS): do not descend into pixmaps subdirs.
12273         * */pixmaps/Makefile.am: removed -- incorporate into parent makefiles.
12274         This speeds up build process.
12276         * objects/custom/custom.c (sheets): made variable static.
12278         * objects/custom/custom_util.[ch] (custom_get_relative_filename):
12279         renamed function.
12281         * objects/custom/load_sheet.[ch] (custom_sheet_load): renamed function.
12283         * objects/custom/custom.c: look in ~/.shapes instead of
12284         ~/.dia_shapes as the per-user shapes directory.
12286         * app/preferences.c (prefs_save): save config to ~/.diarc.
12287         (prefs_load): load configuration from ~/.diarc.  If the file
12288         does not exist, fallback on the old ~/.diarc location.
12290         * app/app_procs.c (create_user_dirs): create the ~/.dia directory
12291         on startup.
12292         (register_all_objects): look for user specific objects in
12293         ~/.objects rather than ~/.dia_libs.
12295 1999-10-10  Fredrik Hallenberg  <hallon@lysator.liu.se>
12297         * configure.in:
12298         * app_procs.c:
12299         * objects/flowchart/box.c
12300         * objects/flowchart/ellipse.c
12301         * objects/flowchart/flowchart.c 
12302         Use gmodule for dynamic linking. As gmodule is using
12303         RTLD_GLOBAL i had to change flowchart box and ellipse
12304         so the typenames doesn't conflict with the standard
12305         box and ellipse.
12307         * message.c
12308         * commands.c
12309         Use button box to make dialogs look better.
12311 1999-10-09  Alexander Larsson  <alla@lysator.liu.se>
12313         * objects/UML/class_dialog.c:
12314         * objects/UML/class.h:
12315         Implemented undo for "UML - Class" objects.
12316         Not 100% tested yet.
12318         * objects/UML/classicon.c:
12319         * objects/UML/constraint.c:
12320         * objects/UML/dependency.c:
12321         * objects/UML/generalization.c:
12322         * objects/UML/implements.c:
12323         * objects/UML/large_package.c:
12324         * objects/UML/lifeline.c:
12325         * objects/UML/message.c:
12326         * objects/UML/object.c:
12327         * objects/UML/realizes.c:
12328         * objects/UML/state.c:
12329         * objects/UML/usecase.c:
12330         Removed warnings.
12331         
12332         * lib/connectionpoint.h:
12333         Fixed typo.
12334         
12335 1999-10-09  James Henstridge  <james@daa.com.au>
12337         * objects/custom/*.[ch]: added copyright notices to custom object
12338         files.
12340         * shapes/Circuit/hdiode.shape:
12341         * shapes/Circuit/hzener.shape: 
12342         * shapes/Circuit/opamp.shape:
12343         * shapes/Circuit/vdiode.shape:
12344         * shapes/Circuit/vzener.shape: made adjustments to make the circuit
12345         shapes look nice after the custom shape code changes.
12347         * objects/custom/README: updated docs to cover changes to drawing
12348         code.
12350         * objects/custom/custom_object.c (custom_draw): honour the line
12351         properties when drawing the shape.
12353         * objects/custom/shape_info.[ch]: added support for setting line
12354         properties for individual drawing elements in a custom shape.  You
12355         can set the dash style, dash length, cap style and join style.
12357 1999-10-07  James Henstridge  <james@daa.com.au>
12359         * objects/custom/shape_info.c (parse_style): added a few extra synonyms
12360         for foreground and background.
12362         * objects/custom/custom_object.c (custom_draw): use the new style
12363         information when drawing the object.
12365         * objects/custom/shape_info.[ch]: store all shape style info in the
12366         GraphicStyle structure.  This makes adding support for extra CSS
12367         attributes easier -- we don't have to keep adding extra arguments to
12368         a lot of functions.
12370 1999-10-05  James Henstridge  <james@daa.com.au>
12372         * lib/intl.c (unalias_lang): merged in changes from the i18n code
12373         swiped from gnome-libs.
12375 1999-10-03  Alexander Larsson  <alla@lysator.liu.se>
12377         * objects/standard/image.c (get_directory):
12378         Fix memleak. Found by Kjartan Maraas <kmaraas@online.no>
12380 1999-09-28  Alexander Larsson  <alla@lysator.liu.se>
12382         * lib/poly_conn.c (polyconn_destroy):
12383         Fix bug. Access of freed memory.
12384         Rememeber, you can't free the handles of an object
12385         before calling object_destroy(), as it unconnects the handles
12386         therefore referencing them.
12388 1999-09-28  Alexander Larsson  <alla@lysator.liu.se>
12390         * app/undo.c:
12391         undo_clear() didn't set stack->depth to zero.
12392         This made other undo functions crash after this had been called
12393         on a "full" stack.
12394         
12395         * dia.xpm:
12396         Slightly modified by Chris Love <clove@exactis.com>
12398 1999-09-19  Alexander Larsson  <alla@lysator.liu.se>
12400         * objects/UML/class.h: 
12401         * objects/UML/class_dialog.c:
12402         Retrun NULL ObjectChange on class property change.
12403         This means no crashes, but "UML - Class" doesn't support undo yet.
12404         
12405 1999-09-19  Alexander Larsson  <alla@lysator.liu.se>
12406         
12407         * lib/text.c:
12408         Indentation fix.
12410         * objects/UML/classicon.c:
12411         * objects/UML/dependency.c:
12412         * objects/UML/generalization.c:
12413         * objects/UML/implements.c:
12414         * objects/UML/large_package.c:
12415         * objects/UML/lifeline.c:
12416         * objects/UML/message.c:
12417         * objects/UML/object.c:
12418         * objects/UML/realizes.c:
12419         * objects/UML/state.c:
12420         * objects/UML/usecase.c:
12421         Update to new undo (w. get/set_state).
12422         Add object menu to add/delete segments.
12424 1999-09-17  Alexander Larsson  <alla@lysator.liu.se>
12426         * app/menus.c:
12427         Add equal distance alignment.
12429         * app/object_ops.c:
12430         Add equal distance alignment.
12431         Fix bug in adjacent alignment.
12433 1999-09-16  Alexander Larsson  <alla@lysator.liu.se>
12435         * objects/UML/constraint.c: 
12436         Update to new undo (w. get/set_state).
12438 1999-09-15  Alexander Larsson  <alla@lysator.liu.se>
12440         * app/paginate_psprint.c:
12441         Save (parts, more todo) of the info in the print dialog to the
12442         next time it's opened.
12443         Patch from Yo Ric Dude <ricdude@toad.net>
12445 1999-09-14  Alexander Larsson  <alla@lysator.liu.se>
12447         * configure.in:
12448         Updated version string to 0.41cvs.
12450         * objects/UML/assocition.c:
12451         Update to new undo (w. get/set_state).
12452         Add object menu to add/delete segments.
12454         * app/app_procs.c:
12455         Added function debug_break() and called it after all
12456         objects and sheets are loaded. Place a breakpoint here if you
12457         want to debug objects. All symbols should be loaded.
12459 1999-09-12  James Henstridge  <james@daa.com.au>
12461         * app/menus.c (display_menu_items): added print menu item.
12462         (filemenu): always add print menu item -- even if gnome-print is
12463         not installed.
12465         * app/commands.h, app/commands.c (file_print_callback): the print
12466         menu item is now available for both gnome-print and non gnome-print
12467         setups.
12469         * app/paginate_psprint.c (diagram_print_ps): show a dialog to let you
12470         print with the non gnome-print driver.
12472 1999-09-11  James Henstridge  <james@daa.com.au>
12474         * app/paginate_gnomeprint.c (diagram_print_gnome): moved the gnome
12475         printer dialog code out of commands.c.
12477         * app/paginate_psprint.c: new file containing the pagination code for
12478         psprint.
12480         * app/render_eps.c: made a few modifications so as well as producing
12481         EPS files, this renderer can be set up to do postscript printing.
12482         This basically entailed adding an extra function to create a RenderEPS
12483         renderer which did not bother setting the viewport for the document.
12484         That was left for the pagination code.
12486 1999-09-10  James Henstridge  <james@daa.com.au>
12488         * app/render_gnomeprint.c (draw_ellipse, fill_ellipse): since
12489         gnome-print does not support elliptic arcs at the moment, approximate
12490         the ellipse with eight bezier curves.  This gives a pretty good
12491         match to a true ellipse.
12493 1999-09-09  James Henstridge  <james@daa.com.au>
12495         * app/commands.c (file_gnome_print_callback): added support for
12496         scaling the diagram.  Also fixed a few other bugs.
12498         * app/paginate_gnomeprint.c (print_page): added ability to scale
12499         document.  Fixed up test to see if the page has no objects on it.
12500         This should prevent some blank pages being printed.  Non square
12501         objects such as lines could still cause problems.
12503 1999-09-08  James Henstridge  <james@daa.com.au>
12505         * app/commands.c (file_gnome_print_callback): changed from using the
12506         standard printer selection dialog to one that also has a paper size
12507         selector as well.
12509         * commands.[ch]: added callbacks for the print menu item.  Currently
12510         it only does A4 output.  I will make it configurable soon.
12511         
12512         * app/menus.c: add a print diagram menu item if gnome-print support
12513         is enabled.
12514         
12515         * app/paginate_gnomeprint.c, app/paginate_gnomeprint.h: this is a
12516         bit higher level than the gnome-print renderer.  It splits the
12517         diagram into page size chunks and then renders them.  For each
12518         page, it only renders the objects whose bounding box intersects
12519         the page, and it sets the clip mask so that the diagram does not
12520         overlap the margins.
12521         
12522         * app/render_gnomeprint.c, app/render_gnomeprint.h: added a renderer
12523         that uses gnome-print as its back end.
12524         
12525         * configure.in: added a check for gnome-print.  It is disabled by
12526         default because the code is not really working correctly yet.
12528         * app/menus.c: the delete object menu item was missing from the
12529         GnomeUIInfo style menus.
12531 1999-09-07  Fredrik Hallenberg  <hallon@lysator.liu.se>
12533         * configure.in
12534         Added japanese to ALL_LINGUAS.
12535         Fix for Linux on Alpha.
12537 1999-09-07  Alexander Larsson  <alla@lysator.liu.se>
12539         * app/create_object.c (create_object_button_press):
12540         Always initialize tool->obj. Otherwise we store a null
12541         in the undo Change.
12543         * lib/text.c:
12544         Set linestyle before drawing cursor.
12545         Fix undo of backwards delete.
12547 1999-09-05  James Henstridge  <james@daa.com.au>
12549         * dia.spec: updated spec file to distribute $(prefix)/share/dia.
12551         * app/render_svg.c (draw_image): some fixes so that the appropriate
12552         style attributes are set.  Before it was setting line styles on
12553         fill_* functions.  Now it only does this for the draw_* variants.
12555         * app/Makefile.am (run_dia.sh): set the DIA_SHAPE_PATH environment
12556         variable so that custom shapes can be loaded.
12558         * shapes/: new directory for custom shapes.  The Circuit sheet has
12559         been moved here.
12561 1999-09-02  James Henstridge  <james@daa.com.au>
12563         * TODO: removed a few todo items that have been implemented.
12565         * app/interface.c (create_sheets): enabled the popup page menu to the
12566         notebook.  This can make it easier to select different sheets.
12568         * object/custom/Circuit/: added diode, zener diode, ground point and
12569         operational amplifier shapes.
12570         
12571         * objects/custom/Makefile.am: added a note about adding DEBUG_CUSTOM
12572         if you want the output.
12574         * objects/custom/shape_info.c (parse_path): same here.
12576         * objects/custom/load_sheet.c (load_with_readdir): don't print so
12577         much debugging output.  To get the previous level of output, define
12578         DEBUG_CUSTOM.
12580         * objects/custom/shape_info.c (parse_svg_node): polygons were being
12581         recorded as polylines in the ShapeInfo structure.
12583         * objects/custom/README: some notes on writing new custom shapes.
12584         
12585 1999-09-01  James Henstridge  <james@daa.com.au>
12587         * objects/custom/Circuit/hinductor.*:
12588         * objects/custom/Circuit/vinductor.*: added inductor shapes that
12589         also test out the bezier curve and SVG path support.
12590         
12591         * objects/custom/custom_object.c (custom_draw): added support for
12592         drawing bezier paths and filled shapes.
12594         * objects/custom/shape_info.c (parse_path): new function to parse
12595         SVG path elements.  It does not do quadratic beziers or elliptic
12596         arcs though.  Only moves, lines and cubic beziers.
12597         (*): added support for paths.
12599 1999-08-31  James Henstridge  <james@daa.com.au>
12601         * objects/sybase/ltm.c (render_to_store): use the newer bezier API.
12603         * app/render_svg.c (draw_bezier, fill_bezier): updated renderer
12604         interface
12606         * app/render_eps.c (draw_bezier, fill_bezier): updated renderer
12607         interface
12609         * app/render_gdk.c (draw_bezier, fill_bezier): updated renderer
12610         interface.
12612         * lib/render_store.[ch]: use newer bezier functions.
12614         * lib/render.h: changed the bezier drawing functions to use an array
12615         of BezPoint structures instead of normal Point structures to allow
12616         lineto's mixed in with the curveto's.
12617         
12618         * objects/custom/Circuit/pnp.*: added pnp transistor shape.
12619         
12620         * objects/custom/Circuit/Makefile.am (SHAPES): added index.sheet and
12621         xpm images for different shapes to Makefile.
12623         * objects/custom/custom_object.c (custom_object_new): set the icon
12624         for the sheet button if there is one.  Otherwise fall back on the
12625         default custom object icon.
12627         * objects/custom/shape_info.c (load_shape_info): read the sheet
12628         icon name from the shape file.
12630         * app/interface.c (create_sheet_page): if sheet_obj->pixmap == NULL,
12631         check the pixmap_file field for the name of a pixmap file to load
12632         for the tool.
12634         * lib/sheet.h (SheetObj): added pixmap_file field to structure.  It is
12635         at the end of the structure, and it isn't used if the pixmap field
12636         is non NULL, so it should not break binary compatibility.
12638         * objects/custom/load_sheet.[ch]: moved sheet loading code here.  Also
12639         added support for the use of an index.sheet file so you can specify
12640         the ordering of the shapes in the sheet, and also internationalise
12641         the sheet name and actually be able to give a description.  The old
12642         readdir based sheet loading code acts as a fallback if an index.sheet
12643         file can not be found.
12645         * objects/custom/custom_util.[ch]: new file containing useful routines
12646         needed by the custom object code.  Currently only contains a simple
12647         routine for resolving relative paths.
12649         * objects/custom/custom_object.c (custom_draw): fixed problem with
12650         drawing rectangles if the shape has been flipped.
12652 1999-08-30  James Henstridge  <james@daa.com.au>
12654         * objects/custom/custom_object.c (custom_get_object_menu): allow
12655         flipping of custom shapes.  This uses the miggle click object
12656         menu.
12658         * objects/custom/Circuit/npn.shape: fix aspect ratio.
12660         * objects/custom/custom_object.c (custom_update_data): honour the
12661         aspect ratio constraints.
12663         * objects/custom/shape_info.c (load_shape_info): updated aspect ratio
12664         tag parsing, so you can specify a free, fixed or a range for aspect
12665         ratios for the shape.
12667 1999-08-29  James Henstridge  <james@daa.com.au>
12669         * objects/custom/test.xml, objects/custom/Circuit/*.shape: fixed
12670         up shape namespace tag.
12672         * objects/custom/shape_info.c (load_shape_info): check xml:lang
12673         attribute on <description> elements to support i18n for custom
12674         shape descriptions.
12675         Also changed the shape namespace for custom shapes to something
12676         a little more sensible.
12678         * lib/dummy_dep.h (dummy_dep): added extra dummy dependency.
12680         * lib/intl.c: new file containing some functions for i18n stuff.
12682         * app/layer_dialog.c (create_button_box): fixed a warning.
12684         * objects/custom/custom_object.c: use current line style.  Save dash
12685         length.
12687         * objects/flowchart/diamond.c: use current line style.  Save dash
12688         length.
12690         * objects/flowchart/parallelogram.c: use current line style.  Save
12691         dash length.
12693         * objects/flowchart/ellipse.c: use current line style.  Save dash
12694         length.
12696         * objects/flowchart/box.c: use current line style.  Save dash length.
12698         * objects/standard/ellipse.c: make ellipse use current line style.
12700         * objects/standard/box.c: use the line style set in the toolbox for
12701         new boxes, and remember the dash length.
12703         * app/commands.c (view_toggle_rulers_callback): fix reshowing of
12704         rulers.
12706 1999-08-24  James Henstridge  <james@daa.com.au>
12708         * objects/flowchart/ellipse.c (ellipse_update_data): made some changes
12709         to try to stop ellipse to get infinite width/height when we resize,
12710         while trying to keep the text inside the ellipse.
12712         * objects/flowchart/box.c, objects/flowchart/parallelogram.c,
12713         * objects/flowchart/diamond.c, objects/flowchart/ellipse.c: fixed
12714         resizing behaviour, so that you can't push objects round the screen
12715         with the resize handles.
12717         * app/lineprops_area.c (dia_arrow_chooser_init, dia_line_chooser_init):
12718         get the OK buttons in the dialogs to take default clicks.
12720         * objects/custom/custom_object.c: added code so that resizing the
12721         shape does not end up pushing it round the screen.
12723 1999-08-23  Alexander Larsson  <alla@lysator.liu.se>
12725         * app/display.[ch]:
12726         Generate rectangle with the union of the damaged regions.
12727         This is used to optimize the grid paint and the object rendering.
12728         display_render_pixmap passes this info to grid_draw() and data_render().
12730         * app/grid.[ch]:
12731         grid_draw doesn't draw grid lines outside of damaged rectangle.
12732         Sets dashlength when drawing non-solid grid.
12733         
12734         * lib/diagramdata.[ch]:
12735         data_render() and layer_render() takes an optional damaged rectangle
12736         argument. No objects not intersecting this are drawn.
12738         * app/diagram.c:
12739         Fix warning.
12740         Call data_render with NULL update rectangle.
12741         
12742 1999-08-23  James Henstridge  <james@daa.com.au>
12744         * objects/custom/custom_object.c (custom_update_data): if the aspect
12745         ratio is fixed, make sure the shape is not distorted.
12747         * object/custom/shape_info.h, objects/custom/shape_info.c: notice if
12748         a <fixaspectratio/> tag is given in the shape file.
12750         * objects/custom/shape_info.[ch], objects/custom/custom_object.c:
12751         added support for stroke-width, stroke and fill CSS attributes
12752         specified in style attributes of the SVG elements.  The line width
12753         is relative to the user specified line width.  The stroke and fill
12754         attributes can only be used to swap the foreground/background
12755         colours.
12757         * lib/widgets.c (dia_line_style_selector_set_linestyle): set the
12758         sensitivity on the dash length selector when this function is called.
12760         * objects/standard/arc.c: same.  Also handle dash length.
12761         * objects/standard/zigzagline.c: same.
12762         * objects/standard/polyline.c: same.  Also handle dash length.
12763         * objects/standard/line.c: use default arrow/line styles.
12765         * app/interface.c: added callbacks to set the default attributes.
12767         * lib/attributes.c: added implementations of these functions.
12769         * lib/attributes.h: added extra prototypes for the new line properties
12770         area in the toolbox.
12772         * app/interface.c (create_lineprops_area): added line properties
12773         area to bottom of toolbox.
12775         * app/lineprops_area.h: a header exporting a few routines of the
12776         line properties area widgets.
12778         * app/lineprops_area.c: new file containing a selector for arrows
12779         and line styles to go in the main toolbox.
12781 1999-08-22  Alexander Larsson  <alla@lysator.liu.se>
12783         * HACKING:
12784         Update Gtk+ 1.0.5 comment to 1.2.0.
12786         * INSTALL:
12787         Demand libtool 1.3
12789         * acconfig.h:
12790         Add HAVE_LIBPOPT
12792         * configure.in:
12793         Make sure we don't propagate -ldl and -lpopt to all LIBS
12794         by adding new var APP_LIBS that only app/dia links with.
12795                 
12796         * app/Makefile.am:
12797         Update run_dia.sh to load custom and flowchart objects.
12799         * objects/ER/Makefile.am:
12800         * objects/FS/Makefile.am:
12801         * objects/UML/Makefile.am:
12802         * objects/network/Makefile.am:
12803         * objects/standard/Makefile.am:
12804         * objects/sybase/Makefile.am:
12805         Don't build versioned libs.     
12806         
12807 1999-08-22  James Henstridge  <james@daa.com.au>
12809         * configure.in: added objects/custom/Circuit/Makefile to AC_OUTPUT
12810         list.
12812         * objects/Makefile.am (SUBDIRS): added custom to subdir list -- it
12813         should actually work a bit now.
12815         * objects/custom/Circuit/*: a test sheet for the custom shape code.
12816         It is a small collection of circuit elements.
12818         * objects/custom/shape_info.c: fixed up loading of polylines and
12819         polygons.  Before it was removing negative signs :(
12821         * objects/custom/pixmaps/custom.xpm: drew the custom shape icon.  A
12822         placeholder was here before.  I still need to work out how to set
12823         icons for individual custom shapes.
12824         
12825         * objects/custom/custom.c: added code to load the shapes into sheets
12826         properly.  The shape files should be arranged into directories, and
12827         each directory represents a different sheet in the toolbox.  This
12828         will make it very easy to distribute a collection of dia shapes as
12829         a tarball.  I still need to work out internationalisation, and maybe
12830         also shape ordering in the sheet.
12832         * objects/custom/custom_object.c: fixed up dialogs for these objects.
12833         (custom_create): fix for objects without text areas.
12835         * objects/custom/shape_info.h, objects/custom/custom_object.c: loading
12836         and saving of custom object works correctly now.
12838 1999-08-21  James Henstridge  <james@daa.com.au>
12840         * objects/flowchart/ellipse.c: 
12841         * objects/flowchart/diamond.c: 
12842         * objects/flowchart/parallelogram.c: 
12843         * objects/flowchart/box.c: Fixed up a few bugs in these objects when
12844         copying or loading these object types.  Not all the connection
12845         points would be initialised correctly.
12847         * objects/flowchart/Makefile.am (libflowchart_objects_la_LDFLAGS):
12848         similar here.
12850         * objects/custom/Makefile.am (libcustom_objects_la_LDFLAGS): do not
12851         build a versioned library.  It will only ever be dlopen'd, so this
12852         is not a problem.
12854         * objects/custom/custom_object.c (custom_distance_from): allow
12855         selecting the object by clicking on the text.  This fixes problems
12856         where the text box is outside the graphic.
12858         * objects/custom/shape_info.c (load_shape_info): fixed up reading
12859         of connections points.  It should be possible to add connections
12860         to custom objects now.
12862         * objects/custom/custom_object.c (custom_update_data): fixed resizing
12863         due to changes to text.
12865         * configure.in: added extra makefiles.
12866         
12867         * objects/custom/shape_info.[ch]:
12868         * objects/custom/custom_object.c:
12869         * objects/custom/custom.c: the starts of custom shape support in dia.
12870         This is not built by default at the moment, since it is not quite
12871         complete.  When it is, it will let you create more shapes for dia
12872         without writing a line of C.  Its implementation includes buzzwords
12873         such as XML and SVG, so it must be good :)
12875 1999-08-19  Karsten Weiss  <karsten@addx.au.s.shuttle.de>
12877         * app/app_procs.c (app_exit): Use button labels "Quit" and
12878         "Cancel" instead of "Yes" and "No".
12879         Set default action to "Cancel" instead of "Quit".
12881 1999-08-19  James Henstridge  <james@daa.com.au>
12883         * objects/flowchart/flowchart.c: added ellipse object.
12884         
12885         * objects/flowchart/ellipse.c: a new shape for the flowchart toolbox.
12887 1999-08-18  James Henstridge  <james@daa.com.au>d
12889         * app/color_area.c (color_area_edit): small fix to prevent dia from
12890         segfaulting when you try to change the default foreground/background.
12892 1999-08-17  Alexander Larsson  <alla@lysator.liu.se>
12894         * app/diagram.[ch] (diagram_redraw_all):
12895         Added function that redraws all diagrams.
12897         * app/preferences.c (prefs_apply):
12898         Call diagram_redraw_all when prefs are changed.
12900         * app/render_svg.c:
12901         Don't use xmlEncodeEntitiesReentrant(). It doesn't exist on
12902         older libxml's, and the old version works good enought here.
12903         
12904 1999-08-17  James Henstridge  <james@daa.com.au>
12906         * lib/widgets.c: changed handlers that were connected to the GtkButton
12907         "pressed" signal to connect to the "clicked" signal.  This removes the
12908         problem where dialogs are inactive until you click a mouse button
12909         after using a colour selector.
12911         * configure.in: added extra makefiles to AC_OUTPUT list.
12912         
12913         * objects/Makefile.am (SUBDIRS): added flowchart module
12915         * objects/flowchart/*: a collection of shapes for use in flowcharts.
12917         * app/color_area.c (color_area_events): similar here.
12919         * app/linewidth_area.c (linewidth_area_events): sometimes a configure
12920         event is recieved with event->width == 0, which causes a warning if we
12921         try to create a pixmap of that width.
12923         * app/preferences.c, app/preferences.h, app/grid.c: added code to
12924         allow you to configure the colour of the grid, and also lets you
12925         set the grid to use dotted lines instead of solid ones.
12926         
12927         * app/commands.c, app/commands.h, app/diagram.c, app/diagram.h,
12928         app/menus.c, app/Makefile.am: added menu entry for exporting SVG files.
12929         
12930         * app/render_svg.h, app/render_svg.c: an SVG (Scalable Vector Graphics)
12931         export filter.  It is not quite complete, but for most shapes it
12932         works as expected.  Fonts still need a bit of work.
12934 1999-08-11  Robert Brady  <rwb197@ecs.soton.ac.uk>
12936         * configure.in: Added "en_GB" to ALL_LINGUAS.
12938 1999-08-04  Fredrik Hallenberg  <hallon@lysator.liu.se>
12940         * menus.c
12941         Added Undo and Redo to GNOME menus.
12942         
12943         * objects/ER/attribute.c:
12944         * objects/ER/entity.c:
12945         * objects/ER/participation.c:
12946         * objects/ER/relationship.c:
12947         Added get/set_state functions.
12949         * objects/ER/participation.c:
12950         Added add/delete segment.
12952         * po/sv.po
12953         Updated Swedish translation.
12955 1999-07-25  Alexander Larsson  <alla@lysator.liu.se>
12957         * app/preferences.[hc]:
12958         Added undo_depth pref.
12959         
12960         * app/undo.[ch]:
12961         Never grow stack larger than pref.undo_depth.
12962         undo_depth == 0 means unlimited.
12963         Converted printfs to conditionally compiled DEBUG_PRINTFs.
12964         
12965 1999-07-25  Alexander Larsson  <alla@lysator.liu.se>
12967         * app/diagram.c:
12968         * app/group.c:
12969         * lib/object.h:
12970         * lib/render_object.c:
12971         * objects/ER/attribute.c:
12972         * objects/ER/entity.c:
12973         * objects/ER/participation.c:
12974         * objects/ER/relationship.c:
12975         * objects/FS/flow-ortho.c:
12976         * objects/FS/flow-poly.c:
12977         * objects/FS/flow.c:
12978         * objects/FS/function.c:
12979         * objects/UML/actor.c:
12980         * objects/UML/association.c:
12981         * objects/UML/class.c:
12982         * objects/UML/classicon.c:
12983         * objects/UML/component.c:
12984         * objects/UML/constraint.c:
12985         * objects/UML/dependency.c:
12986         * objects/UML/generalization.c:
12987         * objects/UML/implements.c:
12988         * objects/UML/large_package.c:
12989         * objects/UML/lifeline.c:
12990         * objects/UML/message.c:
12991         * objects/UML/note.c:
12992         * objects/UML/object.c:
12993         * objects/UML/realizes.c:
12994         * objects/UML/small_package.c:
12995         * objects/UML/state.c:
12996         * objects/UML/usecase.c:
12997         * objects/network/bus.c:
12998         * objects/standard/arc.c:
12999         * objects/standard/box.c:
13000         * objects/standard/ellipse.c:
13001         * objects/standard/image.c:
13002         * objects/standard/line.c:
13003         * objects/standard/polyline.c:
13004         * objects/standard/textobj.c:
13005         * objects/standard/zigzagline.c:
13006         Removed all traces of is_empty(). It doesn't work in an
13007         Undo/Redo world.
13009 1999-07-25  Alexander Larsson  <alla@lysator.liu.se>
13011         * app/diagram.c:
13012         * app/group.[ch]:
13013         * app/undo.[ch]:
13014         Undoable grouping and ungrouping.
13016         * app/layer_dialog.c:
13017         * lib/diagramdata.[ch]:
13018         Undoable layer ops.
13020         * app/modify_tool.c:
13021         Undoable unconnect on handle move.
13023         * lib/orth_conn.[ch]:
13024         Working undoable add/remove segment.
13025         Removed endpoint_handles from OrthConn, renamed
13026         midpoint_handles to handles and put the endpoint
13027         handles there.
13029         * objects/standard/zigzagline.c:
13030         * objects/ER/participation.c:
13031         * objects/UML/association.c:
13032         * objects/UML/dependency.c:
13033         * objects/UML/generalization.c:
13034         * objects/UML/realizes.c:
13035         Update for the changes in OrthConn
13036         
13037 1999-07-23  Karsten Weiss  <karsten@addx.au.s.shuttle.de>
13039         * configure.in: Added "de" to ALL_LINGUAS.
13041 1999-07-17  Alexander Larsson  <alla@lysator.liu.se>
13043         * dia.1:
13044         Fixed typo.
13046         * app/display.c:
13047         * po/da.po:
13048         * po/fr.po:
13049         * po/hu.po:
13050         * po/no.po:
13051         * po/pl.po:
13052         * po/sv.po:
13053         Don't have the <Display> etc part of the menu strings
13054         i18n:ed. Patch from Fabrice.Bellet@imag.fr.
13056         * app/diagram.c:
13057         Don't have the <Display> etc part of the menu strings
13058         i18n:ed. Patch from Fabrice.Bellet@imag.fr.
13059         Don't remove is_empty() objects, that don't work with undo.
13061         * lib/objchange.[ch]:
13062         New files.
13063         Definition of ObjectChange. This is essentially an Change
13064         exported to the object libs. It encapsulates a change made
13065         to an objects internals. It can be applied, reverted and freed.
13066         There are also utility functions for doing ObjectChanges that
13067         only get/set the whole state of an object to store the change.
13068         This cannot be used when the object change deletes or adds a
13069         object which has references from other objects, eg. Handles which
13070         might be connected.
13072         * lib/Makefile.am:
13073         Added objchange.c and objchange.h.
13075         * lib/dia_image.c:
13076         Return NULL when loading fails.
13078         * lib/diamenu.h:
13079         Menu callbacks return an ObjectChange.
13081         * lib/dummy_dep.h:
13082         Reference objchange.o
13084         * lib/focus.h:
13085         Key events return ObjectChange if they modify the object.
13087         
13088         * lib/object.h:
13089         Added object_add_handle_at() function.
13090         Apply properties returns an ObjectChange.
13091         Remove ObjectState and the get/set state functions, these
13092         don't always work. Use the new ObjectChange instead.
13093         
13094         * lib/object.c:
13095         Added object_add_handle_at() function implementation.
13096         
13097         * lib/orth_conn.[ch]:
13098         Use ObjectChange. Not finished yet.
13099         Removed get/set/free state functions
13101         * lib/poly_conn.[ch]:
13102         Use ObjectChange.
13103         Don't remove segments that are small.
13104         Removed get/set/free state functions
13106         * lib/text.[ch]:
13107         Use ObjectChange.
13108         Added functions to get/set all text attributes.
13110         * objects/standard/arc.c:
13111         * objects/standard/box.c:
13112         * objects/standard/ellipse.c:
13113         * objects/standard/image.c:
13114         * objects/standard/line.c:
13115         * objects/standard/polyline.c:
13116         * objects/standard/textobj.c:
13117         * objects/standard/zigzagline.c:
13118         Use ObjectChange.
13119         fixed bug in image_set_state.
13120         zigzagline.c not finished yet.
13122         * app/disp_callbacks.c:
13123         Use ObjectChange that are returned from menu callbacks and
13124         key_events for undo.
13126         * app/properties.c:
13127         Use ObjectChange that are returned from properties apply
13128         for undo.
13130         * app/undo.c:
13131         * app/undo.h:
13132         New undo type: ObjectChangeChange. This wraps a change to the
13133         internals of an object (and ObjectChange) in code that does
13134         app specific stuff (object_add_updates etc.)
13136 1999-07-11  Alexander Larsson  <alla@lysator.liu.se>
13138         * lib/orth_conn.[ch]:
13139         Added code for add/delete segment.
13141         * objects/standard/zigzagline.c:
13142         Use the new orth_conn code.
13143         
13145 1999-07-08  Fredrik Hallenberg  <hallon@lysator.liu.se>
13147         * objects/FS/Makefile.am
13148         Removed fs.h from sources.
13150         * Makefile.am
13151         * dia.1
13152         Added man page.
13154 1999-07-07  Alexander Larsson  <alla@lysator.liu.se>
13156         * app/disp_callbacks.c (ddisplay_canvas_events):
13157         Fix for bug. Every other arrow-key press got lost.
13158         patch from Mr. Data Esq. <data@r47h102.res.gatech.edu>
13160         * INSTALL:
13161         change automake.sh to autogen.sh
13162         
13163 1999-06-24  Alexander Larsson  <alla@lysator.liu.se>
13165         * app/diagram.c:
13166         Don't remove 'empty' objects.
13167         This violent destruction of objects won't work
13168         with the new undo framework.
13170         * app/disp_callbacks.c:
13171         Save undo info for object menu calls and key_events.
13173         * app/properties.c:
13174         Save undo info on properties apply.
13176         * lib/dia_image.[ch]:
13177         Add refcounting for images.
13179         * app/render_eps.c:
13180         * app/render_gdk.c:
13181         * lib/render.h:
13182         DiaImage * -> DiaImage
13184         * app/undo.[ch]:
13185         Add undo functions for object state changes.
13187         * lib/focus.h:
13188         * lib/text.c:
13189         change of semntics for focus->key_event.
13190         Now returns TRUE if the object recieving the event
13191         was changed.
13193         * lib/object.h:
13194         Comment changes.
13196         * lib/orth_conn.[ch]:
13197         Don't automatically create and delete segments when
13198         handles are moved. This is incompatible with undo.
13199         Added state get, set and free functions.
13201         * lib/orth_conn.[ch]:
13202         Added state get, set and free functions.
13204         * objects/UML/object.c:
13205         * objects/UML/uml.c:
13206         Fixed typo "UML - Objet" -> "UML - Object".
13207         Saved old for backwards compatibility.
13209         * objects/standard/arc.c:
13210         * objects/standard/box.c:
13211         * objects/standard/ellipse.c:
13212         * objects/standard/image.c:
13213         * objects/standard/line.c:
13214         * objects/standard/polyline.c:
13215         * objects/standard/textobj.c:
13216         * objects/standard/zigzagline.c:
13217         Added get/set state functions.
13218         Textobj has a redo crash-bug.
13219         Zigzagline needs object menus to add segments.
13220         
13222 1999-06-20  Alexander Larsson  <alla@lysator.liu.se>
13224         * app/render_eps.c (set_dashlength):
13225         Don't generate eps files with zero dash-length.
13227 1999-06-16  Alexander Larsson  <alla@lysator.liu.se>
13229         * app/commands.c:
13230         * app/create_object.c:
13231         * app/undo.[ch]:
13232         Finished undo for create and paste.
13233         
13234         * lib/object.h:
13235         Started properties undo.
13237 1999-06-14  Alexander Larsson  <alla@lysator.liu.se>
13239         * TODO:
13240         Added resizeable groups.
13242         * app/app_procs.c:
13243         Removed unused variable.
13245         * app/commands.c:
13246         * app/undo.[ch]:
13247         Undo/redo for cut/delete done.
13249         * app/create_object.c:
13250         * app/modify_tool.c:
13251         * lib/diagramdata.[ch]:
13252         * app/diagram.[ch]:
13253         renamed diagram_add_selected -> diagram_select
13254         renamed diagram_remove_selected -> diagram_unselect
13255         
13256         * app/properties.[ch]:
13257         Added properties_hide_if_shown() function.
13259 1999-06-13  Alexander Larsson  <alla@lysator.liu.se>
13261         * app/undo.[ch]:
13262         * app/Makefile.am:
13263         Undo functions.
13264         
13265         * app/commands.[ch]
13266         * app/modify_tool.[ch]
13267         * app/object_ops.[ch]
13268         * app/connectionpoint_ops.c
13269         * app/menus.c
13270         Use undo functions.
13271         WARNING: Not finished. Will break.
13272         Finished: move object, move handle.
13274         * app/diagram.[ch]
13275         Added diagram_selected_break_external() function.
13276         It removes all connections between selected objects
13277         and non-selected.
13278         Add undo stack to Diagram.
13279         
13280         * lib/diagramdata.[ch]
13281         Added layer_remove_objects() function
13282         
13283 1999-06-11  Fredrik Hallenberg  <hallon@lysator.liu.se>
13285         * objects/FS/Makefile.am
13286         * objects/sybase/Makefile.am
13287         Now uses GNOME_CFLAGS.
13289         * app/app_procs.c
13290         Now compiles with GNOME even if popt.h isn't available.
13292 1999-06-10  Alexander Larsson  <alla@lysator.liu.se>
13294         * configure.in
13295         * objects/Makefile.am
13296         * objects/sybase/*
13297         First version of sybase objects from
13298         Brian Bruns <camber@umcc.ais.org>
13300 1999-06-10  Fredrik Hallenberg  <hallon@lysator.liu.se>
13302         * configure.in
13303         Added fr to ALL_LINGUAS
13305 1999-06-09  Fredrik Hallenberg  <hallon@lysator.liu.se>
13307         * configure.in
13308         * app/app_procs.c
13309         Popt-code is activated if popt is available.
13311 1999-06-08  Alexander Larsson  <alla@lysator.liu.se>
13313         This is a patch from David Thompson <dcthomp@mail.utexas.edu>
13314         
13315         * lib/orth_conn.[ch]:
13316         Added orthconn_get_middle_handle()
13318         * lib/text.[ch]:
13319         Added text_set_cursor_at_end()
13320         
13321         * objects/FS/*
13322         Added first version of functions structure diagrams.
13323         
13324 1999-05-24  Alexander Larsson  <alla@lysator.liu.se>
13326         * app/modify_tool.c:
13327         Include math.h to remove warning.
13329         * app/commands.c (dialogs_properties_callback):
13330         Bring up correct properties dialog when selected
13331         from menu.
13332         From Dan Cohn <dan@internap.com>
13334 1999-05-20  Alexander Larsson  <alla@lysator.liu.se>
13336         Patch from Lars R. Clausen 
13337         
13338         * app/modify_tool.c:
13339         Changed abs to fabs.
13341 1999-05-19  Alexander Larsson  <alla@lysator.liu.se>
13343         * INSTALL: 
13344         * configure.in:
13345         Require Gtk+ 1.2.0
13347 1999-05-18  Alexander Larsson  <alla@lysator.liu.se>
13349         Patches from Dan Cohn <dan@internap.com>
13350         
13351         * app/commands.[ch]: 
13352         * app/display.[ch]: 
13353         * app/menus.c:
13354         * app/preferences.[ch]:
13355         Implements ability to turn on/off connection points in
13356         current drawing and in global prefs.
13358 1999-05-18  Alexander Larsson  <alla@lysator.liu.se>
13360         * lib/widgets.c (dia_line_style_selector_init): 
13361         Fixed warnings.
13362         
13363         * lib/diagramdata.c (layer_update_extents):
13364         Fixed uninitialized variable error.
13366 1999-05-17  Alexander Larsson  <alla@lysator.liu.se>
13368         * lib/dia_image.c:
13369         Made some changes to the gdk_imlib visual+colormap setup.
13371 1999-05-17  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
13373         * objects/UML/usecase.c: 
13374        * objects/UML/lifeline.c
13375         Fine tunning.
13377         * objects/UML/object.c: 
13378         * objects/UML/message.c: 
13379         Changed font from Courier to Helvetica.
13381         * lib/widgets.c: 
13382         * lib/widgets.h:
13383         Added dash lenth to the LineStyle widget.
13384         
13385         * objects/standard/ellipse.c :
13386         * objects/standard/zigzagline.c: 
13387         * objects/standard/line.c: 
13388         Added dash lenght property.
13390 1999-05-16  Alexander Larsson  <alla@lysator.liu.se>
13392         * app/render_eps.c:
13393         First shot at latin1 encoded eps files.
13394         Works, but the eps files get a bit large.
13395         
13396 1999-05-16  Alexander Larsson  <alla@lysator.liu.se>
13398         * objects/UML/class.[ch]: 
13399         * objects/UML/uml.[ch]:
13400         Reverted the line wrap changes.
13401         Some day this might return, but it has to be selectable and
13402         default to off for loaded objects, otherwise it breaks file
13403         format compatibility.
13404         There was also some complains about how it looked, so a making it
13405         selectable is good for this too.
13407 1999-05-15  Alexander Larsson  <alla@lysator.liu.se>
13409         * objects/UML/class.[ch]:
13410         Some indentation cleanup.
13411         Added wrap_lines variable to class.
13412         I'll fix the line break stuff tomorrow.
13414 1999-05-13  Alexander Larsson  <alla@lysator.liu.se>
13416         * lib/dummy_dep.h:
13417         Added ref to poly_conn.o.
13419         * objects/standard/polyline.c (polyline_draw): 
13420         * objects/standard/zigzagline.c (zigzagline_draw): 
13421         * objects/standard/arc.c (arc_draw): 
13422         * objects/standard/line.c (line_draw):
13423         Draw lines before arrows. This makes hollow arrows not
13424         show the line.
13426 1999-05-13  Alexander Larsson  <alla@lysator.liu.se>
13428         Changes from Kim Peasley <kpeasley@ior.com> 
13429                 
13430         * objects/UML/class.c:
13431         Break lines with long operations so classes won't be
13432         so wide.
13434         * objects/UML/uml.[ch]:
13435         Helperfunctions for the above.
13436         
13437         * objects/UML/objects.c:
13438         Fix bug that duplicated the text in the attributes
13439         textwidget each time the object was selected.
13440         
13441 1999-05-12  Alexander Larsson  <alla@lysator.liu.se>
13443         Changes from Lars R. Clausen <lrclause@cs.uiuc.edu>
13444         
13445         * app/modify_tool.c:
13446         * app/modify_tool.h:
13447         Control-drag is restricted to vertical/horizontal movement
13448         
13449         * lib/object.h:
13450         ModifierKeys argument added to object_move_handle
13452         * app/connectionpoint_ops.c:
13453         * app/create_object.c:
13454         * app/object_ops.c:
13455         * objects/ER/attribute.c:
13456         * objects/ER/entity.c:
13457         * objects/ER/participation.c:
13458         * objects/ER/relationship.c:
13459         * objects/UML/actor.c:
13460         * objects/UML/association.c:
13461         * objects/UML/class.c:
13462         * objects/UML/classicon.c:
13463         * objects/UML/component.c:
13464         * objects/UML/constraint.c:
13465         * objects/UML/dependency.c:
13466         * objects/UML/generalization.c:
13467         * objects/UML/implements.c:
13468         * objects/UML/large_package.c:
13469         * objects/UML/lifeline.c:
13470         * objects/UML/message.c:
13471         * objects/UML/note.c:
13472         * objects/UML/object.c:
13473         * objects/UML/realizes.c:
13474         * objects/UML/small_package.c:
13475         * objects/UML/state.c:
13476         * objects/UML/usecase.c:
13477         * objects/network/bus.c:
13478         * objects/standard/arc.c:
13479         * objects/standard/box.c:
13480         * objects/standard/ellipse.c:
13481         * objects/standard/image.c:
13482         * objects/standard/line.c:
13483         * objects/standard/polyline.c:
13484         * objects/standard/textobj.c:
13485         * objects/standard/zigzagline.c:
13486         Changed calls to move_handle to pass the new argument.
13487         
13488         * lib/widgets.c:
13489         * lib/widgets.h:
13490         Default line width, color etc #define'd
13491         
13492         * po/da.po:
13493         Updates of danish menus
13495 1999-05-08  Fredrik Hallenberg  <hallon@lysator.liu.se>
13497         * dia.xpm
13498         * dia_gnome_icon.png
13499         * dia_gnome_menu_icon.png
13500         * dia_logo.png
13501         Graphics by Toussaint Frédéric <ftoussin@club-internet.fr>.
13503         * app/commands.c
13504         About dialog shows dia_logo.png. Removed the GNOME about dialog.
13506         * Makefile.am
13507         Distribute the icons and install logo in pkgdatadir.
13508         
13509         * app/Makefile.am
13510         Added DATADIR-define.
13511         
13512 1999-04-28  Alexander Larsson  <alla@lysator.liu.se>
13513         Patches from Enrico Scholz <enrico.scholz@wirtschaft.tu-chemnitz.de>
13515         * dia.spec:
13516         Updated version number, made setup quiet, can build from cvs,
13517         --enable-gnome, now using automake 1.4 DESTDIR feature, install-strip
13519         * lib/Makefile.am
13520         * objects/ER/Makefile.am
13521         * objects/UML/Makefile.am
13522         * objects/network/Makefile.am
13523         * objects/standard/Makefile.am
13524         now builds better with gnome
13526         * objects/UML/class_dialog.c
13527         Fixed typo -> po files must be updated too!!
13528         
13529 1999-04-28  Alexander Larsson  <alla@lysator.liu.se>
13531         * lib/dummy_dep.h:
13532         Added reference so that widgets.o gets linked to the app.
13534 1999-04-23  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
13536         * objects/UML/classicon.c: 
13537         Added object mode.
13539         * objects/UML/actor.c: 
13540         Changed position of 'snap-to-grid' so connection points are
13541         in the grid.
13543 1999-04-22  Alexander Larsson  <alla@lysator.liu.se>
13545         * objects/UML/classicon.c:
13546         Changed position of 'snap-to-grid'.
13547         By Alejandro Aguilar Sierra <asierra@servidor.unam.mx>
13548         
13549 1999-04-22  Alexander Larsson  <alla@lysator.liu.se>
13551         * objects/network/antenna.c
13552         * objects/network/flash.c
13553         * objects/network/hub.c
13554         * objects/network/modem.c
13555         * objects/network/modularswitch.c
13556         * objects/network/rj45plug.c
13557         * objects/network/scead-plug.c
13558         * objects/network/network.c
13559         * objects/network/Makefile.am
13560         * objects/network/pixmaps/antenna.xpm
13561         * objects/network/pixmaps/flash.xpm
13562         * objects/network/pixmaps/hub.xpm
13563         * objects/network/pixmaps/modem.xpm
13564         * objects/network/pixmaps/modularswitch.xpm
13565         * objects/network/pixmaps/rj45plug.xpm
13566         * objects/network/pixmaps/sceadplug.xpm
13567         * objects/network/pixmaps/Makefile.am
13568         Lots of new network objects from
13569         Roland Steinbach <roland@support-system.com>.
13571 1999-04-15  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
13573         * objects/UML/classicon.c: 
13574         Fixed connection positions, saved type as int (it has 3 states),
13575         and other small fixes.
13576         
13577 1999-04-14  Alexander Larsson  <alla@lysator.liu.se>
13579         * app/preferences.c:
13580         * app/load_save.c:
13581         Added preference compress_save. It lets dia save uncompressed
13582         xml files.
13584         * objects/UML/class.c:
13585         Fixed bug with size calculation on methods that had class scope.
13586         
13587 1999-04-13  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
13589         * objects/UML/usecase.c: 
13590         Added collaboration mode
13591         Fixed connection points with text > ellipse bug and other 
13592         small things
13594         * objects/UML/state.c:
13595         Fixed bug of bad position of text after being either end
13596         or begin, moved and returned to text
13598 1999-04-12  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
13600         * app/preferences.c: Add prototype declaration for prefs_apply.
13602 1999-04-11  Alexander Larsson  <alla@lysator.liu.se>
13604         * app/preferences.c:
13605         Added 'ok' button.
13606         Apply don't hide window.
13608         * app/properties.c:
13609         Add 'ok' button.
13611         * objects/UML/object.c:
13612         * objdcts/UML/state.c:
13613         Some data was not copied on copy.
13615         This patch is from
13616         Ben Hochstedler <benh@eeyore.moneng.mei.com>
13618 1999-04-09  Alexander Larsson  <alla@lysator.liu.se>
13620         * app/Makefile.am:
13621         Changed link order between X and libxml.
13622         Some people had problems with an old libz in their
13623         x11 directory.  
13625 1999-04-09  Kjartan Maraas  <kmaraas@online.no>
13627         * po/no.po: updated translation.
13628         
13629 1999-04-08  Lars R. Clausen <lrclause@cs.uiuc.edu>
13631         * lib/message.c (message_error):
13632         Fixed small error.
13634         * app/commands.[ch]:
13635         * app/diagram.[ch]:
13636         Added begining of xfig importing
13638 1999-04-08  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
13640         * objects/UML/pixmaps/state.xpm: 
13641         * objects/UML/state.c: 
13642         New UML object state machine.
13644         * objects/UML/uml.c:
13645         * objects/UML/Makefile.am:
13646         * objects/UML/pixmaps/Makefile.am:
13647         Added the state object.
13648         
13649 1999-04-08  Alejandro Aguilar Sierra  <ale@bucefalo>
13651         * objects/UML/usecase.c: 
13652         Added dialog to allow move text outside the ellipse.
13654 1999-04-08  Alexander Larsson  <alla@lysator.liu.se>
13656         * Released Dia 0.41
13657         Tag called DIA_0_41
13659         * NEWS:
13660         Updates for 0.41.
13661         
13662 1999-04-08  Alexander Larsson  <alla@lysator.liu.se>
13664         * configure.in:
13665         Updated version number to 0.41
13667         * po/*.po:
13668         Update po-files
13670 1999-04-04  Fredrik Hallenberg  <hallon@lysator.liu.se>
13672         * app/app_procs.c
13673         Changed errormessage for --export-to-ps. Removed call to 
13674         g_log_set_always_fatal().
13676         * app/diagram.c
13677         * app/disp_callbacks.c
13678         * app/load_save.c
13679         (i18n) Removed gettext from some debugmessages.
13681         * app/menus.c
13682         Small fix in GNOME-menus. Added warning that will help track
13683         problems with translations.
13685         * po/sv.po
13686         (i18n) Updated swedish translation.
13688 1999-04-02  Alexander Larsson  <alla@lysator.liu.se>
13690         * po/da.po:
13691         New updates
13693 1999-04-01  Alexander Larsson  <alla@lysator.liu.se>
13695         * po/da.po:
13696         * po/no.po:
13697         Some fixes.
13698         
13699 1999-04-01  Alexander Larsson  <alla@lysator.liu.se>
13701         * po/da.po:
13702         (i18n) Updated the danish translation.
13703         From Lars R. Clausen.
13705 1999-04-01  Fredrik Hallenberg  <hallon@lysator.liu.se>
13707         * app/menus.c
13708         (i18n) The popup menu is translated now.
13710         * po/sv.po
13711         (i18n) Updated swedish translation.
13713 1999-03-29  Alexander Larsson  <alla@lysator.liu.se>
13715         * Released Dia 0.40
13716         Tag called DIA_0_40
13718         * NEWS:
13719         Updated for new release
13720         
13721 1999-03-29  Alexander Larsson  <alla@lysator.liu.se>
13723         * objects/network/bus.c:
13724         Added initialization of properties dialog to NULL.
13726         * app/commands.c (edit_cut_callback):
13727         Update menu sensitivity when cut object.
13729         * app/modify_tool.c (click_select_object):
13730         * app/modify_tool.c (modify_button_release): 
13731         Call diagram_update_menu_sensitivity() when
13732         selecting objects to update stuff that depends
13733         on selected/not selected.
13735 1999-03-29  Alexander Larsson  <alla@lysator.liu.se>
13737         * Makefile.am:
13738         Change order of subdir so that libintl.a builds.
13739         Now passed make distcheck.
13741 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
13743         * lib/font.c (init_x11_font):
13744         Stupid bug fixed.
13746 1999-03-28  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
13748         * objects/UML/pixmaps/classicon.xpm: 
13749         * objects/UML/classicon.c:
13750         * objects/UML/uml.c:
13751         Added the class stereotype icon objects.
13753         * app/commands.c:
13754         Changed default ps extension from .ps to .eps.
13755         
13756 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
13758         * lib/Makefile.am:
13759         Added diamenu.h and intl.h
13761         * lib/font.c:
13762         Stupid typo fix.
13763         
13764         * objects/UML/pixmaps/Makefile.am:
13765         Added message.xpm
13767         * objects/standard/pixmaps/Makefile.am:
13768         Added image.xpm
13770 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
13772         * lib/font.c:
13773         Use a scalable font before fixed when real font not found.
13775         * app/commands.c:
13776         Removed warning.
13778         * objects/standard/image.c:
13779         Better handling of loading/saving of images.
13781         * INSTALL:
13782         Added some text about cvs, fonts and rewrote some parts.
13784         * TODO:
13785         Updated with new stuff.
13786         
13787         * configure.in:
13788         Bump up version number to 0.40.
13789         
13790 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
13792         * app/display.c:
13793         Moved diagram_add_ddisplay() call into new_display().
13794         Fixed new_display to not use uninitialized variables
13795         causing loaded files to show up as black (or garbage).
13796         
13797         * app/commands.c:
13798         * app/app_procs.c:
13799         Removed unneeded calls to diagram_add_ddisplay().
13800         
13801 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
13803         * objects/UML/lifeline.c:
13804         Fixed bug in copy.
13805         Patch from Andreas Jaeger <aj@arthur.rhein-neckar.de>.
13807         * objects/UML/message.c:
13808         Fixed bug loading messages with null-text.
13809         Patch from Andreas Jaeger <aj@arthur.rhein-neckar.de>.
13811 1999-03-27  Fredrik Hallenberg  <hallon@lysator.liu.se>
13813         * po/sv.po
13814         Updated swedish translation.
13816         * app/menus.c
13817         (GNOME) Removed help-browser from help menu. Fixed typo.
13819         * app/interface.c
13820         (GNOME) Accelerators in diagrams should work now. 
13822 1999-03-25  Fredrik Hallenberg  <hallon@lysator.liu.se>
13824         * app/app_procs.c
13825         * app/commands.c
13826         * app/defaults.c
13827         * app/disp_callbacks.c
13828         * app/display.c
13829         * app/interface.c
13830         * app/menus.c
13831         * app/preferences.c
13832         * app/render_eps.c
13833         * lib/diagramdata.c
13834         * lib/font.c
13835         * lib/message.c
13836         * lib/widgets.c
13837         * objects/ER/*.c
13838         * objects/UML/*.c
13839         * objects/network/*.c
13840         * objects/standard/*.c
13841         * po/update_pofiles_in.sh
13842         * po/POFILES.in
13843         More i18n. All strings (expect rare debug messages) can be
13844         translated now. Moved intl.h from app to lib. Updated
13845         update_pofiles_in.sh to check all .c-files.
13847 1999-03-23  Alexander Larsson  <alla@lysator.liu.se>
13849         * app/disp_callbacks.c (ddisplay_canvas_events):
13850         Don't drop keys while num-lock, scroll-lock etc is on.
13852 1999-03-22  Alexander Larsson  <alla@lysator.liu.se>
13854         * app/render_eps.c (draw_image):
13855         Fixed exporting of images.
13856         Still not perfect, but not outright buggy.
13857         
13858 1999-03-22  Alexander Larsson  <alla@lysator.liu.se>
13860         * configure.in:
13861         * po/hu.po:
13862         Added hungarian translation. By Shooby Ban <bansz@szif.hu>.
13864         * app/Makefile.am:
13865         Added $* to the dia call in run_dia.sh
13867 1999-03-22  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
13868         
13869         * lib/color.[ch]:
13870         Added color_equals() call.
13872         * objects/standard/arc.c:
13873         * objects/standard/line.c:
13874         Don't save unneccesary data.
13875         
13876         * objects/standard/box.c:
13877         * objects/standard/ellipse.c:
13878         * objects/standard/image.c:
13879         * objects/standard/polyline.c:
13880         * objects/standard/zigzagline.c:
13881         Share properties dialog.
13882         Don't save unneccesary data.
13883         
13884 1999-03-22  Seth Alves  <alves@hungry.com>
13886         * app/menus.c:
13887         * app/diagram.c:
13888         * app/display.c:
13889         small changes so that gnome menus aren't broken
13890         
13891 1999-03-22  Alexander Larsson  <alla@lysator.liu.se>
13893         * po/da.po:
13894         Added danish translation from lrclause@cs.uiuc.edu.
13896         * po/POFILES.in:
13897         Updated file.
13899         * po/update_pofiles_in.sh:
13900         Added script that updates POFILES.in.
13901         This should probably be run automatically from somewhere.
13903 1999-03-19  Alexander Larsson  <alla@lysator.liu.se>
13905         * app/diagram.[ch]:
13906         Added function diagram_update_menu_sensitivity() which
13907         sets the sensitivity of some menu items. This function
13908         is called at each diagram state change (from diagram_modified()).
13909         This is needed  because otherwise the keyboard accelerators
13910         don't work correctly.
13912         * app/display.[ch]:
13913         Changed display_set_menu_sensitivity() to display_update_menu_state().
13914         Moved lots of code to diagram_update_menu_sensitivity() in
13915         diagram.c. Optimized to only look up menu-items from path:s once.
13916         
13917         * app/disp_callbacks.c:
13918         * app/interface.c:
13919         When we get a GDK_FOCUS_CHANGE, update menu sensitivity.
13920         Need to set GDK_FOCUS_CHANGE_MASK.
13921         
13922         * app/create_object.c:
13923         Call diagram_modified when an object has been created and
13924         selected so that the menu sensitivity is updated. 
13926         * app/menus.[ch]:
13927         removed menus_set_sensitive() and menus_set_state(). Exported
13928         renamed function menus_get_item_from_path().
13930 1999-03-15  Alexander Larsson  <alla@lysator.liu.se>
13932         * app/disp_callbacks.c:
13933         Show (empty) object menus on object that has none.
13934         Show title on object menus.
13936         * app/display.c:
13937         Set zoom factor correctly when opening new displays.
13938         Better setting of scrollbars.
13940         * app/grid.c:
13941         * app/menus.h:
13942         Some reformating cleanup.
13944         * lib/diamenu.h:
13945         Added title to object menus.
13947         * objects/*/*.c:
13948         Added object menu method (NULL-valued) to all objects.
13950         * objects/standard/polyline.c:
13951         Added title to object menu.
13953 1999-03-14  Alexander Larsson  <alla@lysator.liu.se>
13955         * app/preferences.[ch]:
13956         New files. Implements the preferences dialog and
13957         loading/saving of ~/.diarc.
13959         * app/Makefile.am:
13960         Added preferences.[ch].
13962         * app/app_procs.c:
13963         Load preferences on startup.
13965         * app/commands.[ch]:
13966         Added file_preferences_callback to show the preferences dialog.
13968         * app/create_object.c:
13969         Update extents when creating object.
13970         Use the reset_tools_after_create preferences setting.
13972         * app/display.c:
13973         Use preferences when creating new display.
13975         * app/menus.c:
13976         Add preferences to menu.
13978         * app/defaults.c:
13979         * app/layer_dialog.c:
13980         * app/properties.c:
13981         Don't allow shrinking of dialog.
13982         Add i18n of some strings.
13984 1999-03-11  Kjartan Maraas  <kmaraas@fib.hl.no>
13985         * po/no.po:
13986         Norwegian translation added.
13987         
13988 1999-03-11  Alexander Larsson  <alla@lysator.liu.se>
13990         * objects/standard/line.c: 
13991         * objects/standard/arc.c: 
13992         * objects/standard/polyline.c: 
13993         * objects/standard/zigzagline.c:
13994         Loading of arrow data fixed.
13996 1999-03-09  Alexander Larsson  <alla@lysator.liu.se>
13998         * app/commands.c:
13999         Update extents when saving and exporting to postscript.
14000         Fixes a bug with postscript bounding-box being wrong.
14002         * app/defaults.c:
14003         Changed border width from 5 to 2.
14005         * app/group.c:
14006         Move grouped objects by the move-point of the first object.
14007         Fixes bug that made all objects in the group be off-grid
14008         when moving the group, even though all objects was on-grid.
14010         * app/layer_dialog.c:
14011         Update extents when changing layer.
14013 1999-03-08  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
14015        * objects/UML/uml.c: 
14016        * objects/UML/component.c: 
14017        * objects/UML/pixmaps/component.xpm: 
14018        Added the UML component object
14019         
14020 1999-03-04  Seth Alves  <alves@hungry.com>
14022         * objects/UML/generalization.c (generalization_create): avoid
14023         math on uninitialized genlz->text_width (NaN causes sigfpe)
14024         
14025         * objects/UML/realizes.c (realizes_create): same
14027         * objects/UML/dependency.c (dependency_create): same
14029 1999-03-01  Seth Alves  <alves@hungry.com>
14031         * app/display.c (ddisplay_active): don't fly a warning panel
14032         if ddisplay_active is called when no views are open.
14034         * app/commands.c (set_default_file_selection_directory): set
14035         file selector's default directory if there is already
14036         a document open.
14038 1999-02-28  Alexander Larsson  <alla@lysator.liu.se>
14040         * INSTALL:
14041         New info about imlib requirements.
14043         * Configure.in:
14044         Added lib/pixmaps/Makefile to created makefiles.
14046         * app/app_procs.c:
14047         * app/commands.c:
14048         Change from obsoleted to newer gtk calls.
14049         
14050         * load_save.c:
14051         Pass filename of the diagram when loading and saving.
14052         This creates better oportunities to handle filename saving.
14054         * lib/object.h:
14055         Pass filenames to load and save methods.
14056         
14057         * lib/dia_image.[ch]:
14058         Added dia_image_get_broken() call that returns a image which
14059         is used for 'broken' images.
14060         
14061         * lib/pixmaps/.cvsignore:
14062         * lib/pixmaps/Makefile.am:
14063         * lib/pixmaps/broken.xpm:
14064         New files for the broken image bitmap.
14066         * lib/widgets.c:
14067         Fixed bug with double destroyed filedialog.
14069         * objects/*/*.c:
14070         Updated load and save prototypes to use the new filename argument.
14072         * objects/image.c:
14073         Render broken image instead of line when got no image.
14074         Use the new filename in load and save to save (if possible)
14075         relative pathnames and to better try to find loaded images.
14077 1999-02-28  Alexander Larsson  <alla@lysator.liu.se>
14079         * TODO:
14080         Some updates to the todo file.
14081         
14082         * app/menus.c:
14083         * app/display.c:
14084         Place over/place over => sent to back/bring to front.
14085         Added some keyboard shortcuts to menus.
14086         
14087 1999-02-28  Alexander Larsson  <alla@lysator.liu.se>
14089         * lib/dia_xml.c:
14090         Changed string saving/loading to a new method. This should
14091         be much better att handling &,<,> and whitespaces.
14092         Loading strings of the old kind is still supported for backwards
14093         compatibility.
14095         * samples/ER-demo.dia:
14096         * samples/UML-demo.dia:
14097         Updated to use the new strings.
14098         
14099         * app/load_save.c:
14100         statusbar modified update fix.
14102 1999-02-27  Seth Alves  <alves@hungry.com>
14104         * app/app_procs.c (app_init): added a --export-to-ps option
14105         which will cause dia to load a dia file and save it as ps
14106         and then exit.  this is a little bogus, because it still
14107         pops up a window.  this option only shows up if --enable-gnome
14108         is used
14110         * app/display.c (display_set_menu_sensitivity): no Edit/Delete
14111         menu when built with --enable-gnome
14113         * app/interface.c (create_display_shell): build status bar
14114         even if --enable-gnome is used
14116         * app/menus.c: menu fixes for --enable-gnome
14118         * app/commands.c (file_open_dialog_ok_callback): fixed up
14119         menus when --enable-gnome is used
14120         (file_export_to_eps_callback): set a default file name
14121         when dialog is created
14123 1999-02-27  Alexander Larsson  <alex@c125.ryd.student.liu.se>
14125         * objects/UML/association.c (association_create):
14126         Fixed usage of not initialized variable.
14127         Pointed out by Seth Alves <alves@hungry.com>.
14129 1999-02-24  Alexander Larsson  <alex@c125.ryd.student.liu.se>
14131         * configure.in:
14132         Fixed detection of gnome-xml.
14133         From Valtteri Vuorikoski <vuori@k.notcom.org>.
14134         
14135         * app/app_procs.c:
14136         Fixed error detection on dlsym calls. 
14137         From Valtteri Vuorikoski <vuori@k.notcom.org>.
14139 1999-02-23  Alexander Larsson  <alla@lysator.liu.se>
14141         * objects/UML/message.c (fill_in_dialog):
14142         Fixed warnings.
14144 1999-02-22  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
14146         * objects/standard/zigzagline.c:
14147         * objects/standard/polyline.c:
14148         * objects/standard/line.c:
14149         * objects/standard/arc.c:
14150         * lib/widgets.h:
14151         * lib/arrows.h:
14152         * lib/widgets.c:
14153         Support for sizeable arrows. 
14155         * objects/standard/box.c:
14156         * objects/standard/ellipse.c:
14157         * objects/standard/image.c:
14158         Changed creation handle to lower-right.
14159         Transparent box/ellipse.
14160         
14161         * objects/standard/image.c:
14162         Better layout of properties boxes.
14164 1999-02-20  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
14166         * objects/UML/message.c (fill_in_dialog): 
14167         Fixed dialog fill in. Common dialog for all messages.
14169         * objects/UML/object.c: 
14170         Added multiple instance. Dialog related bugs fixed.
14171         Common dialog for all instances. Completed copy and destroy.
14173         * objects/UML/lifeline.c (lifeline_load): 
14174         Conn initialization bug fixed and few bad loading prevention flags.
14175         Common dialog for all lifeline objects.
14176         
14177 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
14179         * lib/dia_image.[ch]:
14180         More work on the DiaImage abstraction.
14181         
14182         * app/app_procs.c:
14183         * app/render_eps.c:
14184         * app/render_gdk.c:
14185         * objects/standard/image.c:
14186         Use the new DiaImage calls.
14188 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
14190         * app/menus.c:
14191         * app/display.c:
14192         Reversed the meaning of align horizontal/vertical.
14194 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
14196         * app/load_save.c (diagram_load):
14197         Statusbar update fix.
14199 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
14201         * app/interface.c (create_display_shell):
14202         Fixed status bar size.
14203         
14204 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
14206         * lib/dia_image.[ch]:
14207         Added extern declaration for dia_image_release.
14208         Removed dia_image_draw, as it's not neseccary.
14210 1999-02-14  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
14211         
14212         * app/object_ops.c: 
14213         * app/menus.c: 
14214         Added equal distance alignment both vertical and horizontal.
14215         
14216         * objects/UML/object.c: 
14217         Added a couple of attributes to load/read that were missing.
14219         * objects/UML/lifeline.c: 
14220         Better handling of handles. Fixed another bug I forgot to add
14221         to my last patch.
14222         
14223 1999-02-13  Alexander Larsson  <alla@lysator.liu.se>
14225         Patch from Lars Clausen <lrclause@shasta.cs.uiuc.edu>
14226         
14227         * lib/dia_image.[ch]:
14228         * lib/Makefile.am:
14229         New files. DiaImage wraps the GdkImlibImage.
14231         * lib/render.h:
14232         * app/render_eps.c:
14233         * app/render_gdk.c:
14234         * lib/render_store.[ch]:
14235         * objects/standard/image.c:
14236         Use the new DiaImagetype.
14238         * lib/widgets.c:
14239         Removed unused variable to eliminate  warning.
14241 1999-02-11  Alexander Larsson  <alla@lysator.liu.se>
14243         * objects/standard/box.c:
14244         Added rounded corners on the box object.
14246         * lib/widgets.[ch]:
14247         Updated the DiaFileSelector widget.
14248         
14249 1999-02-09  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
14251         * objects/UML/object.c (objet_draw): 
14252         Completed underlining of all object name lines. 
14254         * objects/UML/message.c (fill_in_dialog): 
14255         Fixed a bug that filled incorrectly the message's dialog.
14257         * objects/UML/lifeline.c (lifeline_load): 
14258         Some cleanning and fixed a couple of bugs that caused
14259         crashes after reading diagrams with lifelines.
14261         * lib/text.c: 
14262         Added flags to prevent crash with void strings
14264 1999-02-07  Matthias Köster <Matthias.Koester@Informatik.Uni-Oldenburg.DE>
14265         * app/display.[ch]:
14266         Added statusbar to the display widget. Currently shows the zoom
14267         factor and modified flag of the viewed diagram. The statusbar is
14268         updated upon calls to ddisplay_zoom and ddisplay_update_statusbar.
14269         This caused the following additions:
14270         
14271         * app/diagram.[ch]:
14272         Added function diagram_set_modified. Calls
14273         ddisplay_update_statusbar for all displays showing the modified diagram.
14274         Changed diagram_modified to call diagram_set_modified.
14275         
14276         * app/interface.c:
14277         Added the creation of the statusbar.
14278         
14279         * app/load_save.c:
14280         diagram_save now calls diagram_set_modified instead of setting
14281         dia->modified. Needed to force call to display_update_statusbar
14282         
14283         * app/commands.c:
14284         Changed the way view_show_all works. Now calls ddisplay_zoom
14285         instead of directly setting the zoom_factor, so the zoom factor is
14286         correctly shown in the statusbar.
14288         * app/magnify.c:
14289         Fixed rubberband zoom to use ddisplay_zoom().
14290         
14291 1999-02-07  Fredrik Hallenberg  <hallon@lysator.liu.se>
14293         * app/app_procs.c
14294         Rudimentary GNOME session management.
14295         
14296         * app/disp_callbacks.c
14297         * app/interface.c
14298         * app/menus.c
14299         * app/menus.h
14300         GNOME menus. Problems: 
14301         Callbacks doesn't get user_data.
14302         Weird warnings when creating popup menus.
14303         menus_set_sensitive(), menus_set_state() doesn't work.
14305 1999-02-05  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
14307         * configure.in:
14308         Add AM_PATH_GDK_IMLIB() call.
14310         * app/Makefile.am:
14311         Add gdk_imlib to linking flags.
14313         * app/app_procs.c:
14314         Init gdk_imlib.
14315         Print library-loading error messages on stdout too.
14317         * app/interface.c:
14318         Add standard image to toolbox.
14319         
14320         * app/render_eps.c: 
14321         Set a more reasonable dot length.  Fixed
14322         missing initialization of dot length.
14323         Added draw_image methods.
14325         * app/render_gdk.c (new_gdk_renderer): 
14326         Dot a bit wider.  Looks good in normal mode now.
14328         * objects/standard/image.c:
14329         * objects/standard/pixmaps/image.xpm:
14330         New files. Standard object for images.
14331         
14332         * app/render_eps.c (set_linestyle):
14333         * app/render_gdk.c (set_linestyle):
14334         * lib/widgets.c (dia_line_style_selector_init): 
14335         * lib/render.h: 
14336         New line style DOTTED.
14338         * lib/render.h:
14339         * lib/render_store.c:
14340         Change DrawImage call to use gdk_imlib.
14342         * lib/widgets.[ch]:
14343         Added widgets for selecting files.
14344         Added dotted to the linestyle selector.
14346 1999-02-06  Alexander Larsson  <alla@lysator.liu.se>
14348         * objects/network/printer.c:
14349         * objects/network/network.c:
14350         * objects/network/pixmaps/printer.xpm:
14351         * objects/network/.cvsignore:
14352         * objects/network/Makefile.am:
14353         * objects/network/pixmaps/Makefile.am:
14354         New printer object in network.
14355         From Martin Hawlisch <hawlisch@roxi.rz.fh-mannheim.de>
14357         * TODO:
14358         Added known XML bug.
14359         
14360 1999-02-06  Alexander Larsson  <alla@lysator.liu.se>
14362         * app/load_save.c:
14363         * lib/dia_xml.c:
14364         Reverted back from #include <gnome-xml/tree.h> to
14365         #include <tree.h> as this is fixed by the xml-config program.
14366         The former way broke for some people.
14367         Reported by blizzard@redhat.com.
14369         * objects/UML/lifeline.c:
14370         * objects/UML/message.c:
14371         * objects/UML/object.c:
14372         Removed some warnings.
14373         
14374 1999-02-04  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
14376         * objects/UML/lifeline.c: 
14377         Fixed connection points over the life line when the focus of
14378         control is not drawn.
14380         * objects/UML/message.c: 
14381         Now a recursive message can be freely resized using the handles.
14383 1999-02-02  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
14385         * objects/UML/lifeline.c:
14386         Added connection points.
14387         Added properties dialog with the option to draw/hide focus of control
14388         box and destruction mark.
14390         * objects/UML/object.c: 
14391         Added properties dialog and stereotype, explicit state and attributes. 
14392         It's also possible to mark the object as active.
14394         * objects/UML/pixmaps/object.xpm: 
14395         Cosmetic change.
14397         * objects/UML/message.c:
14398         Added "recursive" message type (was not necessary to use OrthConn).
14400 1999-02-02  Alexander Larsson  <alla@lysator.liu.se>
14402         * objects/standard/arc.c:
14403         Removed old debug code. Fixes a visual bug. From lrclause@cs.uiuc.edu.
14405 1999-02-01  Alexander Larsson  <alla@lysator.liu.se>
14407         Patch from Lars R. Clausen <lrclause@cs.uiuc.edu>
14408         
14409         * app/load_save.c:
14410         * lib/dia_xml.c:
14411         Update xml includes to gnome-xml/*.h.
14413         * objects/standard/arc.c:
14414         Only one property dialog per type.
14415         Fix arrows directions.
14417         * objects/standard/box.c:
14418         * objects/standard/ellipse.c:
14419         * objects/standard/textobj.c
14420         Added default properties dialog.
14421         
14423 1999-01-31  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
14425         * objects/UML/Makefile.am: 
14426         * objects/UML/uml.c:
14427         * objects/UML/lifeline.c: 
14428         * objects/UML/object.c: 
14429         * objects/UML/message.c:
14430         * objects/UML/pixmaps/lifeline.xpm: 
14431         * objects/UML/pixmaps/object.xpm: 
14432         * objects/UML/pixmaps/message.xpm:
14433         Added 3 new UML objects for dynamic modeling. To avoid internal 
14434         conflicts, the name "objet" is used for object "object".        
14436         * lib/arrows.[ch]: 
14437         Added ARROW_HALF_HEAD arrow type to allow drawing asynchronous
14438         UML messages.
14439         
14440 1999-01-30  Alexander Larsson  <alla@lysator.liu.se>
14442         * app/display.[ch]:
14443         * app/modify_tool.c:
14444         Added autoscrolling while doing rubber-band select.
14445         This patch from Matthias Köster
14446         (Matthias.Koester@Informatik.Uni-Oldenburg.DE)
14447         
14449 1999-01-28  Alexander Larsson  <alla@lysator.liu.se>
14451         * app/defaults.[ch]:
14452         New files, deals with default properties dialog.
14454         * lib/diamenu.h:
14455         New file. Contains definitions for the new object menu.
14457         * lib/poly_conn.[ch]:
14458         New file. Base class for poly-line like objects.
14460         * objects/standard/polyline.c:
14461         * objects/standard/pixmaps/polyline.xpm:
14462         New files. Polyline object.
14464         * app/app_procs.c:
14465         Fixed bug with infinite loop when registering sheets.
14466         
14467         * app/commands.c:
14468         Removed unneccesary stuff.
14470         * app/disp_callbacks.c:
14471         Support for object menus.
14473         * app/interface.c:
14474         Added polyline to toolbox.
14475         Added call to tool_options_dialog_show() when double clicking on
14476         tool.
14478         * app/tool.[ch]:
14479         New function tool_options_dialog_show() for tool properties.
14481         * lib/arrows.[ch]:
14482         Added ARROW_NONE.
14484         * lib/object.h:
14485         Added ObjectType methods for handling object default dialogs.
14486         Added Object method for handling object_menu.
14487         Added unused methods to ObjectTypeOps for future binary
14488         compatibility.
14490         * lib/widgets.[ch]:
14491         Added DiaArrowTypeSelector widget.
14493         * objects/standard/arc.c:
14494         * objects/standard/zigzagline.c:
14495         Added support for default properties.
14497         * objects/standard/line.c:
14498         Added support for default properties.
14499         Just use one properties dialog for all line objects. NOTE: This
14500         seems to have a bug. We're working on it.
14502         * standard/standard.c:
14503         Add the polyline object.
14505 1999-01-27  Alexander Larsson  <alla@lysator.liu.se>
14507         * app/modify_tool.c:
14508         Commented out buggy transitive select function. It wasn't really
14509         meant to go into cvs.
14510         
14512 1999-01-25  Fredrik Hallenberg  <hallon@lysator.liu.se>
14514         * autogen.sh:
14515         * acconfig.h:
14516         * configure.in:
14517         * Makefile.am:
14518         * app/Makefile.am:
14519         * po/POTFILES.in:
14520         * app/intl.h
14521         i18n-support.
14523         * po/sv.po:
14524         Swedish translation. Not completed.
14525         
14526         * configure.in:
14527         * acconfig.h:
14528         Added possibility to enable GNOME specific code with configure.
14530         * configure.in:
14531         Added possibility to set debug level with configure.
14533         * commands.[hc]:
14534         Added about dialog.
14536         * app_procs.c
14537         * commands.c
14538         * interface.c
14539         * menus.c
14540         Added some GNOME specific code. Not ready for use.
14542 1999-01-24  Alexander Larsson  <alla@lysator.liu.se>
14544         * INSTALL:
14545         Added text about needing gtk 1.1.13 and gnome-xml.
14546         
14547         * NEWS:
14548         Described changes since last version (0.20).
14550         Released version 0.30, tagged DIA_0_30.
14552 1999-01-22  Alexander Larsson  <alla@lysator.liu.se>
14554         * app/magnify.c (magnify_button_release):
14555         Fixed a problem when zooming in on a very small box would
14556         not release the grabbed pointer-focus.
14558 1999-01-21  Alexander Larsson  <alla@lysator.liu.se>
14560         * app/load_save.c (diagram_load):
14561         Be somewhat more robust when loading files that
14562         are not diagrams.
14563         
14564 1999-01-21  Alexander Larsson  <alla@lysator.liu.se>
14566         * app/app_procs.c:
14567         * objects/ER/er.c:
14568         * objects/UML/uml.c:
14569         * objects/network/network.c:
14570         * objects/standard/standard.c:
14571         Added versioning of object libraries.
14573         * app/create_object.c:
14574         Don't change tool when an object is created.
14575         
14576         * objects/network/network.c:
14578         * TODO:
14579         Update
14581 1999-01-19  Alexander Larsson  <alla@lysator.liu.se>
14583         * configure.in:
14584         Updated gtk requirement to Gtk+ 1.1.13.
14586         * app/display.c:
14587         Always add one screenful of scrolling space on
14588         each side of a diagram window.
14590 1999-01-19  Jeff Garzik  <jgarzik@pobox.com>
14592         * autogen.sh:
14593         Tell automake to auto-install missing files.
14595         * app/menus.c:
14596         Renamed deprecated Gtk+ function.
14598 1999-01-16  Alexander Larsson  <alla@lysator.liu.se>
14600         * Makefile.am:
14601         * configure.in:
14602         * samples/Makefile.am:
14603         * samples/ER-demo.dia:
14604         * samples/UML-demo.dia:
14605         Added samples directory.
14606         Added samples for ER and UML.
14607         
14608         * app/commands.c:
14609         * app/disp_callbacks.c:
14610         * app/menus.c:
14611         Zoom is done by sqrt(2) instead of 2.
14612         Lots of more zoom options in the menu.
14614         * objects/ER/relationship.c:
14615         Relationships have 8 connectionpoints instead of 4.
14617         * objects/UML/class.c:
14618         UML class name font a bit smaller.
14619         Fixed stupid bug in the copy operation.
14620         
14621         * app/display.c:
14622         Displays are opened at 500x400 instead of 256x256.
14624         * app/load_save.c:
14625         Fixup of internal error message.
14627         * app/color_area.c:
14628         * app/diagram.c:
14629         * app/modify_tool.c:
14630         * lib/object.c:
14631         Removed debug printf's.
14632         
14633         * TODO (BUGS):
14634         Added new known bug.
14636 1999-01-16  Alexander Larsson  <alla@lysator.liu.se>
14638         * app/interface.c:
14639         * app/menus.c:
14640         Fixed so accelerator groups work in all windows.
14641         Updated to new gtk function names.
14643         * TODO (BUGS):
14644         Removed fixed bug.
14646         * app/display.c:
14647         Updated to new gtk function names.
14648         Set sensitivity of the align menu items.        
14650         * objects/ER/pixmaps/Makefile.am:
14651         * objects/UML/pixmaps/Makefile.am:
14652         * objects/network/pixmaps/Makefile.am:
14653         Fix so that make dist works.
14655         * app/app_procs.c:
14656         * app/color_area.c:
14657         * app/commands.c:
14658         * app/diagram.c:
14659         * app/grid.c:
14660         * app/layer_dialog.c:
14661         * app/load_save.c:
14662         * app/object_ops.c:
14663         * app/properties.c:
14664         * lib/diagramdata.[ch]: 
14665         * lib/message.c:
14666         * lib/objects/ER/attribute.c:
14667         * lib/objects/ER/entity.c:
14668         * lib/objects/ER/participation.c:
14669         * lib/objects/ER/relationship.c:
14670         * lib/objects/ER/.c:
14671         * objects/UML/actor.c:
14672         * objects/UML/association.c:
14673         * objects/UML/class_dialog.c:
14674         * objects/UML/dependency.c:
14675         * objects/UML/generalization.c:
14676         * objects/UML/large_package.c:
14677         * objects/UML/realizes.c:
14678         * objects/UML/.c:
14679         * objects/UML/.c:
14680         Updated to new gtk function names.
14681         Removed warnings.
14683 1999-01-15  Alexander Larsson  <alla@lysator.liu.se>
14685         * TODO:
14686         Update TODO.
14688         * app/app_procs.c:
14689         Fixed loading of diagrams specified as arguments.
14691         * objects/ER/attribute.c:
14692         * objects/ER/entity.c:
14693         * objects/ER/er.c:
14694         * objects/ER/participation.c:
14695         * objects/ER/relationship.c:
14696         Updated the ER objects.
14697         
14699 1999-01-14  Alexander Larsson  <alla@lysator.liu.se>
14701         * configure.in:
14702         * app/Makefile.am:
14703         * objects/Makefile.am:
14704         * objects/ER/attribute.c:
14705         * objects/ER/entity.c:
14706         * objects/ER/er.c:
14707         * objects/ER/participation.c:
14708         * objects/ER/relationship.c:
14709         * objects/ER/pixmaps/Makefile.am:
14710         * objects/ER/pixmaps/attribute.xpm:
14711         * objects/ER/pixmaps/entity.xpm:
14712         * objects/ER/pixmaps/participation.xpm:
14713         * objects/ER/pixmaps/relationship.xpm:
14714         * objects/ER/pixmaps/weakentity.xpm:
14715         First commit of entity relationship objects.
14716         These were done by hallon@lysator.liu.se.
14717         There are still stuff to do on these.
14718         
14719 1999-01-14  Alexander Larsson  <alla@lysator.liu.se>
14721         * TODO:
14722         Updates.
14724         * app/diagram.[ch]:
14725         Change diagram_remove_all_selected to take new argument
14726         delete_empty. Empty objects are deleted only if it is TRUE.
14727         Removed call to close_eps_renderer. This is now done in end_render
14728         in the eps renderer.
14730         * app/create_object.c:
14731         * app/layer_dialog.c:
14732         Update calls to diagram_remove_all_selected.
14734         * app/commands.c:
14735         Update calls to diagram_remove_all_selected.
14736         Some code reformating.
14737         Changed order of adding updates i align_h and align_v.
14739         * app/modify_tool.c:
14740         Update calls to diagram_remove_all_selected.
14741         Added pointer grab when doing rubber-band selection, this fixes
14742         the bug when draging the box over to another window.
14744         * app/connectionpoint_ops.[ch]:
14745         diagram_update_connections_object changed to take an argument
14746         update_nonmoved. This lets connections that has not moved, but
14747         the stuff they're connected to has been moved work.
14748         Update calls to the new diagram_update_connections_object.
14750         * app/properties.c:
14751         Update calls to the new diagram_update_connections_object.
14752         Update extents when properties are applied.
14753         
14754         * app/disp_callbacks.c:
14755         Added support for zooming with the '+' and '-' keys.
14757         * app/menus.c:
14758         Removed old keyboard shortcuts for zoom.
14760         * lib/render.h:
14761         Added calls begin_render and end_render to renderer.
14762         These can be used for setup and cleanup.
14764         * lib/diagramdata.c:
14765         Added calls to begin_render and end_render in data_render.
14767         * app/render_gdk.c:
14768         Added begin_render and end_render.
14770         * app/render_eps.[ch]:
14771         Added begin_render and end_render.
14772         Moved close_eps_renderer code to end_render.
14773         Various fixes to the generated eps code. This fixes importing
14774         generated eps into LYX.
14775         
14776 1999-01-12  Alexander Larsson  <alla@lysator.liu.se>
14778         * TODO:
14779         Update of todo.
14780         
14781         * app/menus.c:
14782         Menus for alignment updated.
14784         * app/object_ops.[ch]:
14785         Functions for object alignment updated.
14787         * app/commands.[ch]:
14788         Object alignment callbacks updated.
14789         New diagrams are called Untitled-<nr>.
14791         * app/layer_dialog.c:
14792         Active layer selected when showing layers from new
14793         diagram.
14795         * app/load_save.c:
14796         Compress xml files when saving.
14797         Use xml namespace 'dia'.
14799         * lib/object.h:
14800         Minor comment update.
14802         * objects/UML/class_dialog.c:
14803         Cleanup of the gkt_list_item moving code.
14804         Fixed bug with update of operation when moving parameters.
14806 1999-01-10  Alexander Larsson  <alla@lysator.liu.se>
14808         * app/layer_dialog.[ch]:
14809         Fixed the rest of the layers dialog.
14811         * app/dialog.c:
14812         Added call to redo layer dialogs diagram list when changing
14813         diagram name.
14815         * lib/diagramdata.[ch]:
14816         Added data_raise_layer and data_lower_layer functions for
14817         raising/lowering layers. Added data_add_layer_at for adding a
14818         layer at a specified index.
14820 1999-01-05  Alexander Larsson  <alla@lysator.liu.se>
14822         This is the asierra-990105 patch done by asierra@servidor.unam.mx.
14823                 
14824         * app/app_procs.c:
14825         Added support for reading diagrams from the command line.
14827 1998-12-21  Alexander Larsson  <alla@lysator.liu.se>
14829         This is the asierra-981220 patch done by asierra@servidor.unam.mx.
14830                 
14831         * app/commands.[ch]:
14832         Added objects_align_callback().
14834         * app/menus.c:
14835         Added align objects to menu.
14837         * app/object_ops.[ch]:
14838         Add object_list_align().
14839         
14840 1998-12-17  Alexander Larsson  <alla@lysator.liu.se>
14841         * app/layer_dialog.[ch]:
14842         New files. Handles the layers dialog. Needs a bugfix for glib to
14843         work. Sent patch to gtk-list.
14844         
14845         * app/pixmaps/new.xpm:
14846         * app/pixmaps/eye.xbm:
14847         * app/pixmaps/lower.xpm:
14848         * app/pixmaps/raise.xpm:
14849         * app/pixmaps/delete.xpm:
14850         New files. Images for the layer dialog buttons.
14851         
14852         * lib/diagramdata.h
14853         * lib/diagramdata.c
14854         New files for the DiagramData and Layer structures and functions.
14855         
14856         * app/app_procs.c:
14857         Added call to create_layer_dialog() on startup.
14858         
14859         * app/commands.[ch]:
14860         New callbacks for showing the properties and layout dialog.
14861         Changes for the new DiagramData structure.
14863         * app/connectionpoint_ops.c:
14864         * app/cut_n_paste.c:
14865         * app/diagram.[ch]:
14866         * app/display.[ch]:
14867         * app/group.c:
14868         * app/modify_tool.c:
14869         * app/object_ops.[ch]:
14870         * app/render_eps.c:
14871         * lib/object.[ch]:
14872         Changes for the new DiagramData structure.
14874         * app/interface.c:
14875         * app/properties.c:
14876         Set correct wmclasses.
14878         * app/load_save.c:
14879         Fix load and save of layers.
14881         * diagram.dtd:
14882         Update DTD for layers.
14883         
14884         * app/menus.c:
14885         New menus for dialogs.
14887         
14888         * TODO:
14889         Some updates.
14890         
14891 1998-12-06  Alexander Larsson  <alla@lysator.liu.se>
14893         * TODO:
14894         Removed the gtk 1.1.5 stuff.
14896         * configure.in:
14897         Updated gtk check to version 1.1.5.
14898         Updated version from 0.20 to 0.30
14900         * app/commands.[ch]:
14901         Updated some callbacks to be of type GtkItemFactoryCallback1.
14902         Not all are done yet, but it works anyway.
14904         * app/display.h:
14905         Removed Gtk 1.0.0 GtkAcceleratorTable references.
14906         
14907         * app/interface.c:
14908         * app/menus.[ch]:
14909         Update to Gtk 1.1.x functions.
14910         Use ItemFactory instead of MenuFactory.
14911         
14912         * app/render_gdk.c:
14913         Removed Gtk 1.0.0 references.
14915         * objects/UML/class_dialog.c:
14916         Scrolled window updates for Gtk 1.1.5.
14917         
14918         * lib/dia_xml.c:
14919         Removed ugly fix for gnome-xml bug. Make sure you get the
14920         newest version of gnome-xml from CVS.
14921         
14922 1998-12-05  Alexander Larsson  <alla@lysator.liu.se>
14924         * TODO:
14925         Removed the xml load/save line.
14927         * lib/files.[ch]:
14928         Removed files.
14929         
14930         * lib/Makefile.am:
14931         Removed building of files.c
14933         * app/load_save.c:
14934         * lib/connection.c:
14935         * lib/element.c:
14936         * lib/object.c:
14937         * lib/orth_conn.c:
14938         * lib/render_object.c:
14939         * objects/UML/actor.c:
14940         * objects/UML/association.c:
14941         * objects/UML/class.c:
14942         * objects/UML/constraint.c:
14943         * objects/UML/dependency.c:
14944         * objects/UML/generalization.c:
14945         * objects/UML/implements.c:
14946         * objects/UML/large_package.c:
14947         * objects/UML/note.c:
14948         * objects/UML/realizes.c:
14949         * objects/UML/small_package.c:
14950         * objects/UML/uml.c:
14951         * objects/UML/usecase.c:
14952         * objects/network/bus.c:
14953         * objects/standard/arc.c:
14954         * objects/standard/box.c:
14955         * objects/standard/ellipse.c:
14956         * objects/standard/line.c:
14957         * objects/standard/textobj.c:
14958         * objects/standard/zigzagline.c:
14959         Removed all includes of files.h
14961         
14962 1998-12-05  Alexander Larsson  <alla@lysator.liu.se>
14964         * dialog.dtd:
14965         Made the val property of string be implied.
14966         This makes it possible to save strings that
14967         are NULL. Just leave out val.
14969         * objects/lib/dia_xml.c:
14970         Fixed string so that it is possible to save strings
14971         that are NULL. Also made an ugly workaround of a
14972         bug in gnome-xml which removes empty properties.
14973         
14974         * objects/lib/orth_conn.c:
14975         Fixed a bug in saving. Forgot to step through the
14976         directions.
14977         
14978         * objects/UML/association.c: 
14979         * objects/UML/class.c: 
14980         * objects/UML/constraint.c: 
14981         * objects/UML/dependency.c: 
14982         * objects/UML/generalization.c: 
14983         * objects/UML/implements.c: 
14984         * objects/UML/large_package.c: 
14985         * objects/UML/note.c: 
14986         * objects/UML/small_package.c:
14987         * objects/UML/realizes.c:
14988         * objects/UML/usecase.c: 
14989         * objects/UML/actor.c: 
14990         Fixed UML objects to save as xml.
14991         The last two were done by asierra@servidor.unam.mx (asierra-981204)
14992         
14993         * objects/UML/uml.[ch]:
14994         Updated *_write() and *_read() functions to use xml.
14996         * objects/network/bus.c: 
14997         * objects/network/computer.c: 
14998         * objects/network/disc.c: 
14999         * objects/network/monitor.c:
15000         Updated network diagrams to use xml.
15002 1998-12-02  Alexander Larsson  <alla@lysator.liu.se>
15004         * dialog.dtd:
15005         New file. DTD that describes the xml file format
15006         dia uses.
15008         * lib/dia_xml.[ch]:
15009         New files. Support for saving object to xml files.
15011         * configure.in:
15012         * app/Makefile.am:
15013         * lib/Makefile.am:
15014         Added check for and usage of gnome-xml library.
15016         * app/load_save.c:
15017         Major chages. Now saves/loads diagrams as xml.
15019         * lib/object.[ch]:
15020         * lib/element.[ch]:
15021         * lib/connection.[ch]:
15022         * lib/orth_conn.[ch]:
15023         * lib/render_object.[ch]:
15024         * lib/text.[ch]:
15025         Updated object support load/save functions for xml:
15027         * object/standard/arc.c:
15028         * object/standard/box.c:
15029         * object/standard/ellipse.c:
15030         * object/standard/line.c:
15031         * object/standard/textobj.c:
15032         * object/standard/zigzagline.c:
15033         Updated all standard objects to use xml.
15034         
15035         NOTE NOTE NOTE
15036         Only the standard objects are converted right now, don't
15037         save or load uml or network diagrams yet. Also, since this
15038         is new code it is deemed a bit unstable.
15039         
15040         * TODO
15041         Added a know bug.
15043 1998-12-01  Alexander Larsson  <alla@lysator.liu.se>
15045         * objects/UML/class.c:
15046         Changed classname font to Helvetica.
15047         Added more space above the classname
15049         * objects/UML/usecase.c:
15050         Correct placements of connectionpoints on ellipse.
15051         Better algorithm for deciding aspect ration on
15052         ellipse.
15054         These changes were made by Alejandro Aguilar Sierra
15055         <asierra@servidor.unam.mx>. (asierra-981201)
15057 1998-11-30  Alexander Larsson  <alla@lysator.liu.se>
15059         * objects/UML/actor.c:
15060         Changed the extents and alignment of the element
15061         and the text.
15063         * objects/UML/.cvsignore:
15064         Added usecase.lo and actor.lo.
15066 1998-11-30  Alexander Larsson  <alla@lysator.liu.se>
15068         * objects/UML/actor.c:
15069         * objects/UML/usecase.c:
15070         * objects/UML/pixmaps/actor.xpm:
15071         * objects/UML/pixmaps/case.xpm:
15072         New files. Implements usecase and actor UML objects.
15073         These objects are done by Alejandro Aguilar Sierra
15074         <asierra@servidor.unam.mx>.
15075         
15076         * objects/UML/Makefile.am:
15077         * objects/UML/pixmaps/Makefile.am:
15078         Added usecase and actor to makefile.
15079         
15080         * AUTHORS:
15081         Added Alejandro and Jerome to autors list.
15082         
15083 1998-11-25  Alexander Larsson  <alla@lysator.liu.se>
15085         * objects/UML/class.c (umlclass_load):
15086         Fixed typo. Reported by Jerome.Abela@solsoft.fr
15088 1998-11-24  Alexander Larsson  <alla@lysator.liu.se>
15090         * app/properties.c:
15091         Update connections when doing apply in the properties window.
15093         * objects/UML/uml.[ch]:
15094         * objects/UML/class.[ch]:
15095         * objects/UML/class_dialog.c:
15096         Added connection points on both sides of attributes and
15097         operations in UML classes.
15098         Based on idea from Jerome.Abela@solsoft.fr
15099         
15100 1998-11-24  Alexander Larsson  <alla@lysator.liu.se>
15102         * README:
15103         Some new documentation about handles and connectionpoints.
15104         
15105         * lib/object.[ch]:
15106         Added functions object_add_connectionpoint and
15107         object_remove_connectionpoint for handling a dynamic
15108         number of connectionpoints.
15110         * objects/UML/class.c:
15111         Only reserve space for stereotype when it is shown.
15113         These changes are from Jerome Abela <Jerome.Abela@solsoft.fr>
15115 1998-11-08  Alexander Larsson  <alla@lysator.liu.se>
15117         * app/connectionpoint_ops.c:
15118         * app/commands.c:
15119         * app/disp_callbacks.c:
15120         * app/display.[ch]:
15121         * app/grid.c:
15122         * app/handle_ops.c:
15123         * app/magnify.c:
15124         * app/modify_tool.c:
15125         * app/render_gdk.[ch]:
15126         * lib/render.h:
15127         Huge cleanup of internal rendering system.
15128         Moved a lot of data (pixmap, width, height & gc) into the GdkRenderer.
15129         This gives a few new methods for Interactive Renderers for setting
15130         clipping regions and drawing pixel based lines and rects.
15131         Updated the rest of the code to use the new stuff.
15132         
15133         * app/render_eps.c:
15134         Fixed warning.
15136         * lib/widgets.c:
15137         * objects/standard/zigzagline.c
15138         Fixed unused variable warnings.
15140         * lib/font.c:
15141         Fixedbug with stringwidth where width==0.
15143         * TODO:
15144         Added known bug.
15146 1998-11-02  Alexander Larsson  <alla@lysator.liu.se>
15148         * lib/widgets.[ch]:
15149         Added suppot for setting the font of a
15150         DiaFontSelector widget.
15151         Also fixed some typos in the header.
15153         * lib/object.h: 
15154         Added a comment about the GetPRoperties method call.
15155         You have to make sure to update widget state when
15156         this method is called. (Not all objects do this yet,
15157         to be fixed.)
15159         * TODO:
15160         Some small updates
15162 1998-11-01  Alexander Larsson  <alla@lysator.liu.se>
15164         * lib/font.c
15165         Fixed problem with height of ascent and descent for fonts.
15166         It didn't use the whole height (==ascent+descent) when calculatine
15167         ascent_ratio and descent_ratio.
15169         * objects/standard/textobj.c:
15170         * objects/standard/box.c:
15171         * objects/standard/ellipse.c:
15172         * objects/standard/line.c:
15173         * objects/standard/arc.c:
15174         Updated and added property dialogs for these objects.
15175         Also added line width/color/style to those objects
15176         that didn't have it.
15177         This change breaks fileformat compatibility for these objects.
15178         
15179         * objects/standard/zigzagline.c:
15180         Changed zigzagline to be based on OrthConn, much nicer.
15181         Also added line style and color to properties.
15182         This change breaks fileformat compatibility for zigzagline.
15184         * lib/message.c:
15185         Fixed bug in message(). Forgot a pair of '&'.
15187 1998-10-29  Alexander Larsson  <alla@lysator.liu.se>
15189         * lib/widgets.[ch]:
15190         Added DiaColorSelector widget.
15191         This is a colored button that pops up a color selection
15192         dialog when pressed.
15194 1998-10-28  Alexander Larsson  <alla@lysator.liu.se>
15196         * lib/widgets.[ch]:
15197         * lib/Makefile.am:
15198         New files, added widgets for selecting fonts, alignment
15199         and line-style. Will be used later.
15201 1998-10-12  Alexander Larsson  <alla@lysator.liu.se>
15203         * app/Makefile.am:
15204         * lib/Makefile.am:
15205         * objects/UML/Makefile.am:
15206         * objects/network/Makefile.am:
15207         * objects/standard/Makefile.am:
15208         Changed "CFLAGS = -Wall -g" to "CFLAGS = @CFLAGS@"
15209         in all Makefile.am.
15211 1998-10-03  Alexander Larsson  <alla@lysator.liu.se>
15213         * app/handle_ops.c (handle_draw):
15214         connected HANDLE_MINOR_CONTROL also becomes red.
15216 1998-10-02  Alexander Larsson  <alla@lysator.liu.se>
15218         * Makefile.am:
15219         removed -ldl from linking. This is added if needed by configure.
15221         * app/app_procs.c:
15222         Open dlls with RTLD_LAZY if it is defined.
15223         Some cleanups: char *error -> const char *error
15224         Added fprintf()'s to where we exited because of errors.
15226         * lib/files.c:
15227         Include <sys/types.h>
15229 1998-10-01  Alexander Larsson  <alla@lysator.liu.se>
15231         * acconfig.h:
15232         * configure.in:
15233         * app/app_procs.c:
15234         Detect dlopen better.
15235         Detect wether dlopen needs an underscore in the identifier.
15236         This code was mostly borrowed from guile.
15238         * lib/sheet.[ch]:
15239         * app/app_procs.c:
15240         * objects/standard/standard.c:
15241         * objects/network/network.c:
15242         * objects/UML/uml.c:
15243         * most objects:
15244         Changed the way sheets reference objects to use just the
15245         name. Changed module loading to a two stage model:
15246         First register_objects() is called for all modules.
15247         Then register_sheets() is called. This means that
15248         sheets can safely include objects from other modules.
15249         
15251 1998-09-30  Alexander Larsson  <alla@lysator.liu.se>
15253         * objects/network/bus.c:
15254         * objects/network/network.c:
15255         * objects/network/Makefile.am:
15256         New file bus.c. Added new object: Ethernet bus.
15258         * objects/standard/box.c:
15259         Added call to gtk_spin_button_set_numeric for linewidth spinner
15260         in property dialog.
15262 1998-09-30  Alexander Larsson  <alla@lysator.liu.se>
15264         * app/connectionpoint_ops.c:
15265         * app/create_object.c:
15266         * app/group.c:
15267         * app/handle_ops.c:
15268         * app/modify_tool.c:
15269         * lib/connection.c:
15270         * lib/element.c:
15271         * lib/handle.h:
15272         * lib/object.c:
15273         * lib/orth_conn.c:
15274         * loads of objects:
15275         Changed handle->connectable to handle->connect_type.
15276         Now handles can be HANDLE_CONNECTABLE_NOBREAK, which means
15277         that their connections don't break when moving objects.
15279         * app/diagram.c:
15280         Always select the last handle in an object that has
15281         the closest distance.
15282         
15283         * lib/geometry.[ch]:
15284         Added rectangle_add_point function.
15285         
15287 1998-09-27  Alexander Larsson  <alla@lysator.liu.se>
15289         * app/properties.[ch]: New files. Handles the new properties
15290         dialog.
15292         * app/modify_tool.c: Changed to use new properties dialog.
15294         * app/object_ops.[ch]: Removed object_changed_callback, as it's
15295         not needed anymore. This is now handled differently in
15296         properties.c
15298         * lib/object.[ch]:
15299         Changed the properties ops for objects. Removed typedefs
15300         ChangedObjectTime and ObjectChangedFunc needed for the old way.
15301         Added object_return_null function.
15302         
15303         * app/group.c:
15304         * lib/render_object.c:
15305         * objects/*/*.c:
15306         Changed objects to use the new properties dialog.
15307         
15309 1998-09-14  Nuno Ferreira  <nmrf@rnl.ist.utl.pt>
15311         * */Makefile.am (INCLUDES): Changes to work with srcdir !=
15312         builddir.
15314         * autogen.sh: New file. Copied from gtk and added a call to
15315         libtoolize. Anyone knows why this isn't done in gtk?
15317         * Removed autogenerated files.
15319 1998-09-12  Alexander Larsson  <alla@lysator.liu.se>
15321         * Added call setlocale(LC_NUMERIC, "C") so that formating of
15322           floating-point numbers in postscript output will be correct.
15323         * Did some cleanup of generated postscript files.