1. 05 Sep, 2014 1 commit
    • Hans Breuer's avatar
      dox: [warningectomy] missing parameter documentation ... · bd423ae6
      Hans Breuer authored
       - add plug-ins/pdf for documentation extraction
       - remove second occurrence of plug-ins/svg
       - fix doxygen complaints about missing parameter documentation
       - fix a bug in export-render.py where the parameter was documented,
         used in the implementation but not declared
       - fix title mismatch for group ObjectConnects
      bd423ae6
  2. 31 Jan, 2014 2 commits
  3. 19 Jan, 2014 2 commits
  4. 14 Dec, 2013 1 commit
    • Hans Breuer's avatar
      Fix Beziergon behavior after restructuring · ebe144ce
      Hans Breuer authored
      Adding and removing points (segments) to the Beziergon did not work as
      before due to changes from 62dab7da. Actually that commit did not take
      into account, that bezierconn_closest_segment() returned 0 for the first
      segment but beziershape_closest_segment() returned 1.
      Now the segment index is zero-based as expected and the Beziergon code
      use the appropriate offsets to deal with it.
      Also a unit-test is specifically written for Add/Remove Segment to not
      introduce such bugs with upcoming restructuring.
      ebe144ce
  5. 16 Mar, 2013 1 commit
    • Hans Breuer's avatar
      Revert "Bezier*: fix save of BezPoint with type BEZ_LINE_TO" · fadc2335
      Hans Breuer authored
      This reverts commit 195eb75c.
      
      Not sure what I was thinking, but that code broke saving of
      curve-to by loosing the last segment. The intended fix might
      not be necessary at all anymore because of:
      
      Revision: cb3589a6
      Author: Hans Breuer
      Date: 06.10.2012 21:10:06
      Message:
      Bezier*: improved handling for BEZ_LINE_TO
      
      To make editing in Dia more convenient we turn line-to to
      curve-to with cusp controls
      ----
      Modified : lib/bezier-common.c
      fadc2335
  6. 03 Oct, 2012 6 commits
  7. 21 Jul, 2012 1 commit
    • Hans Breuer's avatar
      Reduce GUI coupling by passing DiaContext* down to lib/objects/plug-ins · 7be2dcff
      Hans Breuer authored
      A lot of low level code was using message_warning() and friends.
      While convenient this had multiple issues:
       - message boxes were popped up asynchronous with the task
       - a single task could create multiple dialogs
       - the messages were loosing context (or did not gain it)
       - the classification had to be done by the callee
         (if it's an error, warning or info depends on the caller)
       - message_*() was also used for programmers errors
      
      ToDo:
       check all dia_context_release() to do sth useful with the content
        - decide between warning and error by return value of the
          function taking the context
        - maybe do some in display showing like gedit (for import & drop)
      
       convert also the save/export stuff to use DiaContext
        - finally activate autosave in thread
        - get rid of dia_message_filename()
        - get rid of strerror() use - it had utf-8 issues
      7be2dcff
  8. 03 Apr, 2011 1 commit
    • Jason Childs's avatar
      Bug #591525 - Transparent objects by adding alpha to Color structure · b8994a34
      Jason Childs authored
      From: Jason Childs <oblivian@users.sourceforge.net>
      Date: Tue, 11 Aug 2009 23:55:20 -0400
      Subject: [PATCH] Color transparency support
      
      Add alpha to Color structure to support transparency. This change tries
      to be a uninstrusive as possible, any and all references to Color have
      either been upgraded to read/write the new alpha parameter or they
      default to 1.0 to retain the existing functionality.
      If the plugin/importer/exporter does not support transparency, it will
      render the same as before.  The cairo renderer has been updated to use
      alpha and the dia file format has been extended to understand both the
      new alpha value and support older files that don't have alpha for color
      values.
      b8994a34
  9. 29 Dec, 2009 2 commits
  10. 04 Oct, 2009 1 commit
    • Hans Breuer's avatar
      Bug 568168 - allow to render "holes" with some renderers · fe78bedf
      Hans Breuer authored
      A lot of Dia's bezier code has warnings like "only first BezPoint can be
      a BEZ_MOVE_TO". This is basically a limitation of the bezier approximation
      code originally used in the DiaGdkRenderer. It is currently used in the
      renderer base class DiaRenderer, but there already are some renderers in
      principle capable to handle move-to within bezier pathes just fine (cairo,
      svg, wmf, ...).
      Unfortuanetly also the XML format to serialize BezPoint has the hardcoded
      assumption of only one MOVE_TO at the beginning of the data. Although this
      is easily fixable by not using bezier(conn|shape)_(save|load) that would
      result in broken forward compatibility (older versions wont be able any
      longer to read bezier written with a newer version.
      So for the moment the rendering of holes is restricted to 'intermediate'
      rendering, e.g. the rendering of "Standard - Outline".
      
      2009-01-18  Hans Breuer  <hans@breuer.org>
      
       * lib/bezier_conn.c(bezierconn_simple_draw) : unused function adapted to
       split a given bezier rendering at the move-to points into 'easier' pieces
       (bezierconn_save) : add g_warning() about not first BEZ_MOVE_TO
       * lib/beziershape.c(beziershape_simple_draw) : unused function adapted to
       render only up to the first move-to within a bezier path with holes
       (beziershape_save) : add g_warning() about not first BEZ_MOVE_TO
       * lib/dia_svg.c(dia_svg_parse_path) : instead of splitting into pieces at
       move-to within a path just return the whole thing (disabled)
       * lib/geometry.c(distance_bez_(line|shape)_point,) : instead of
       complaining about "BEZ_MOVE_TO found halfway ..." just calculate it
       * lib/diarenderer.[ch] : DiaRenderer::is_capable_to(RENDER_HOLES) to
       allow objects code to adapt to specific renderer capabilities
       * objects/standard/outline.c : render holes if the renderer used is
       capable to do so. Otherwise fall back to rendering 'inner' shapes with
       color_white
       * plug-ins/cairo/diacairo-renderer.c
         plug-ins/libart/dialibartrenderer.c : implement Renderer::is_capabe_to
       * plug-ins/wmf/wmf.cpp : make it capable to render holes
      fe78bedf
  11. 06 Feb, 2009 1 commit
  12. 09 Aug, 2008 1 commit
    • Hans Breuer's avatar
      factor out ddisplay_show_all() from ... view_show_all_callback ... to make · 32fa7a92
      Hans Breuer authored
      2008-08-09  Hans Breuer  <hans@breuer.org>
      
      	* app/display.[hc] app/dia.def : factor out ddisplay_show_all() from
      	* app/commands.c : ... view_show_all_callback ...
      	to make the functions signature more appropriate to be called by 
      	a plug-in
      
      	* plug-ins/python/autolayoutforce.py : my playground for Fred Morcos'
      	'force based autolayout' algorithm, see:
      	http://mail.gnome.org/archives/dia-list/2008-August/msg00030.html
      	* plug-ins/python/Makefile.am : to EXTRA_DIST (not to be installed)
      
      	* lib/bezier_conn.c lib/bezier_shape.c : use g_new0 for Handle 
      	allocation to ensure they pointers are not referencing random objects
      	
      	* lib/connectionpoint.c(connpoint_is_autogap): an unconnected 
      	ConnectionPoint can not matter for autogap
      	* lib/bezier.c : allows to remove the hack to disable the bounding box
      	calculation in bezier_load()
      
      	* lib/connectionpoint.h : turned ConnectionPoint(Flags|Dir) to enums,
      	helps documentation and graphical debuggers
      	
      	* lib/geometry.h(Rectangle): swap top/left and bottom/right to a more 
      	usual order (after debugging quite some bounding box code) finally 
      	because of it's use in bezierline_update_data()
      	* lib/plug-ins.h : increment DIA_PLUGIN_API_VERSION
      
      	* lib/libdia.def : rectangle_in_rectangle export
      
      	* object/SISSI/sissi.c : don't try to load an image file from NULL 
      	filename; some formatting near that.
      
      
      svn path=/trunk/; revision=4104
      32fa7a92
  13. 25 May, 2008 1 commit
    • Hans Breuer's avatar
      Attempts to fix bug #534275 attempt to make arc drawing for · 03608b31
      Hans Breuer authored
      2008-05-18  Hans Breuer  <hans@breuer.org>
      
      	Attempts to fix bug #534275
      	* lib/diagdkrenderer.c(draw_fill_rounded_rect) : attempt to make
      	arc drawing for radius<line_width less backend specific. 
      	* objects/standard/box.c objects/standard/polyline.c 
      	  objects/standard/zigzagline.c : 
      	set LINEJOIN_ROUND when rendering "rounded" (with radius>0)
      
      
      svn path=/trunk/; revision=4044
      03608b31
  14. 17 Jul, 2007 1 commit
  15. 22 Feb, 2006 1 commit
  16. 03 Apr, 2005 1 commit
  17. 21 May, 2004 1 commit
  18. 20 Aug, 2003 1 commit
  19. 15 Aug, 2003 1 commit
  20. 03 Aug, 2003 1 commit
    • Hans Breuer's avatar
      minor formating and g_new0 for tool creation · 4ed8bce8
      Hans Breuer authored
      2003-08-03  Hans Breuer  <hans@breuer.org>
      
      	* app/create_object.c : minor formating and g_new0 for
      	tool creation
      
      	* lib/bezier_conn.[hc] lib/beziershape.[hc]
      	  lib/prop_geomtypes.c (prop_geomtypes_register)
      	  objects/standard/bezier.c objects/standard/beziergon.c :
      	ability to set bezpoints via StdProp api
      
      	* plug-ins/python/pydia-property.c : convert list of tuples
      	to BEZPOINTARRAY
      
      	*  plug-ins/python/diasvg_import.py : use it to
      	implement part of path parsing. Also minor improvements
      	like inheritance of group attributes to members,
      	whitespace, title and style:text/css ignoring ;-)
      4ed8bce8
  21. 31 Jul, 2003 1 commit
  22. 06 Oct, 2002 1 commit
    • Hans Breuer's avatar
      See also: · c3bf440a
      Hans Breuer authored
      2002-10-06  Hans Breuer  <hans@breuer.org>
      
      	See also:
      	http://mail.gnome.org/archives/dia-list/2002-October/msg00027.html
      
      	* lib/dia-enums.h lib/diatransform.[hc]
      	  lib/diarenderer.[hc] lib/diainteractiverenderer.c
      	  lib/diagdkrenderer.[hc] lib/diasvgrenderer.[hc]
      	: new files
      
      	* lib/makefile.msc lib/makefile.am : added new files
      
      	* lib/plug-ins.c : g_module_error() returns a locale
      	string, convert to utf8 before further usage
      
      	* lib/render.h : #error out. Everything including this
      	needs porting
      	* lib/*.[hc] : ported to new renderer api
      
      	* app/diaepsrenderer.h : unfinished DiaEpsRenderer interface
      	just to make the rest compile
      	* app/render_eps.c : temporary disabled all of this
      	* app/render_eps.h : removed RendererEPS
      
      	* app/render_gdk.[hc] : a small wrapper around the new
      	DiaGdkRenderer form lib/*
      
      	* app/render_libart.h : removed RenderLibart definition
      	* app/render_libart.c : not yet ported to new DiaRenderer
      	but having an implementation to untie form FT2 dependency
      	at least on win32. It is using new Pango api form bug #94791
      
      	* app/render_pixmap.[hc] : a small wrapper around the new
      	DiaGdkRenderer form lib/*
      
      	* app/display.h : removed render_*.h includes
      	* app/display.c : the only place where specific
      	renderers need to be known
      
      	* app/connectionpoint_ops.c app/grid.c app/handle_ops.c
      	use new DiaInteractiveRenderer interface
      
      	* app/*.c : ported to new renderer api
      	* object/*/*.c : ported to new renderer api
      	s/render.h/diarenderer.h/
      	s/Renderer/DiaRenderer/
      	s/renderer->ops/renderer_ops/
      	add in every draw method:
        	DiaRendererClass *renderer_ops = DIA_RENDERER_GET_CLASS (renderer);
      
      	* plug-ins/hpgl/hpgl.c :
      	  plug-ins/wmf/wmf.cpp
      	  plug-ins/wpg/wpg.c : ported to be DiaRenderer based
      	* plug-ins/shape/shape-export.c
      	  plug-ins/svg/render_svg.c : ported to be DiaSvgRenderer based
      	  (nice how small these files became :-)
      c3bf440a
  23. 18 Jul, 2002 2 commits
  24. 11 May, 2002 2 commits
  25. 26 May, 2001 1 commit
    • Cyrille Chepelov's avatar
      refactoring of the bounding box code (beginning with lines, polylines and · aa5e0e6e
      Cyrille Chepelov authored
      	* lib/Makefile.am:
      	* lib/boundingbox.[ch] (NEW): (some) refactoring of the bounding
      	box code (beginning with lines, polylines and polybeziers), into a
      	more generic facility. While at it, a better shot at correctly
      	computing the bounding box of a Bezieroid (should take care of
      	#53424, #51233 and of course is part 1 of #52912).
      
      	* lib/diagramdata.c: turned the RENDER_BOUNDING_BOXES conditional
      	into a hidden preference (set render_bounding_boxes in diarc).
      	* app/preferences.[ch]:	Added support for hidden preferences.
      
      	* lib/geometry.[ch]: sprinkled with "const" modifiers.
      
      	* lib/bezier_conn.[ch]:
      	* lib/beziershape.[ch]:
      	* lib/connection.[ch]:
      	* lib/element.[ch]:
      	* lib/poly_conn.[ch]:
      	* lib/orth_conn.[ch]:
      	* lib/neworth_conn.[ch]:
      	* lib/polyshape.[ch]: adapted to take advantage of
      	boundingbox.[ch] instead of relying on private (duplicate) code.
      
      	* object/FS/flow.c:
      	* object/GRAFCET/action.c:
      	* objects/GRAFCET/condition.c:
      	* objects/GRAFCET/vergent.c:
      	* objects/GRAFCET/vector.c:
      	* objects/SADT/annotation.c:
      	* objects/SADT/arrow.c:
      	* objects/ER/participation.c:
      	* objects/UML/constraint.c:
      	* objects/UML/implements.c:
      	* objects/UML/lifeline.c:
      	* objects/UML/message.c:
      	* objects/UML/realizes.c:
      	* objects/UML/generalization.c:
      	* objects/UML/association.c:
      	* objects/UML/dependency.c:
      	* objects/FS/flow-ortho.c:
      	* objects/network/bus.c:
      	* objects/standard/arc.c:
      	* objects/standard/bezier.c:
      	* objects/standard/beziergon.c:
      	* objects/standard/line.c:
      	* objects/standard/polygon.c:
      	* objects/standard/zigzagline.c:
      
      	* objects/standard/polyline.c: Some *BBExtras structures changed
      	names while moving to boundingbox.[ch]. A trivial mass-renaming.
      aa5e0e6e
  26. 23 Mar, 2001 1 commit
  27. 17 Mar, 2001 1 commit
    • James Henstridge's avatar
      fix off by one error in beziershape save code, which was adding an extra · ff22c418
      James Henstridge authored
      2001-03-17  James Henstridge  <james@daa.com.au>
      
      	* lib/beziershape.c (beziershape_save): fix off by one error in
      	beziershape save code, which was adding an extra segment to the
      	object on save.
      
      	* app/menus.c: add a separator in the gnome version of the help
      	menu.
      
      	* app/app_procs.c (app_init): add a --nosplash argument which
      	disables the splash screen.
      
      	* app/dia_embedd.c (main): don't leave the splash screen open for
      	embeddable component.
      
      	* app/splash.c (app_splash_init): the gtk_widget_show_now() call
      	didn't seem to be showing the splash screen like expected, so I
      	have replaced it with some code that calls gtk_main() until the
      	first exposure of the window.
      ff22c418
  28. 06 Mar, 2001 1 commit
    • Kjartan Maraas's avatar
      Place comment around text after #endif. #include <string.h>. #include · 230009e2
      Kjartan Maraas authored
      2001-03-06  Kjartan Maraas  <kmaraas@gnome.org>
      
      	* app/grid.h: Place comment around text after #endif.
      	* lib/bezier_conn.c: #include <string.h>.
      	* lib/beziershape.c: #include <string.h>.
      	* lib/connpoint_line.h: Comment after #endif.
      	* lib/dia_dirs.c: #include <string.h>.
      	* lib/element.c: Same.
      	* lib/lazyprops.c: #include <config.h> and "intl.h".
      	* lib/lazyprops.h: Comment out text after #endif.
      	* lib/neworth_conn.c: #include <string.h>
      	* lib/orth_conn.c: Same here.
      	* lib/poly_conn.c: Here too.
      	* lib/polyshape.c: And here.
      	* lib/properties.c: Remove #include "intl.h" from here and add
      	an array of static strings to work around bug in gettext that
      	makes it miss strings in a #define body.
      	* objects/GRAFCET/action_text_draw.h: Comment out text after #endif.
      	* objects/GRAFCET/boolequation.h: Same here.
      	* objects/chronogram/chronoline_event.h: Add prototype for
      	destroy_cle().
      230009e2
  29. 22 Feb, 2001 1 commit
    • Cyrille Chepelov's avatar
      Changed a bit the _update_boundingbox() interface. Now the parent elements · f11a743e
      Cyrille Chepelov authored
      	* lib/geometry.h:
      	* lib/connection.[ch]:
      	* lib/poly_conn.[ch]:
      	* lib/polyshape.[ch]:
      	* lib/bezier_conn.[ch]:
      	* lib/beziershape.[ch]:
      	* lib/orth_conn.[ch]:
      	* lib/neworth_conn.[ch]:
      	* lib/element.[ch]: Changed a bit the _update_boundingbox()
      	interface. Now the parent elements have an extra_spacing
      	structure, which child objects just need to fill, to take care of
      	most arrow & line width extra space needs.
      
      	* objects/**/*.c: updated all objects to the new interface.
      	While at it, killed all instances of (Object *) downcasts (phew !)
      
      	* objects/GRAFCET/condition.c: removed the arrowhead, which IEC848
      	doesn't speak about.
      f11a743e
  30. 21 Oct, 2000 1 commit