See ChangeLog for newer entries

2004-03-31  Ted Gould <ted@gould.cx>

	* src/interface.cpp:  Changing the default size so that it matches
	  the default template size.  This way, for blank documents, the
	  window doesn't open and then resize.

2004-03-31  Ted Gould <ted@gould.cx>
	* src/file.cpp, src/dialogs/filedialog.cpp, src/extension/db.cpp,
	  src/extension/db.h, src/extension/system.cpp:
	  A bunch of changes for Bulia's bug 925875.  Basically now the
	  save dialog remembers which extension you've used.  This also
	  means that save works with non-standard extensions.  Also, it
	  will add extensions for you if you didn't put them on.  Finally,
	  the error dialog doesn't come up if you hit cancel in the
	  'Save As...' dialog.  Whew!

	* src/preferences-skeleton.h:  Added in settings to make the save
	  extension global, along with whether or not the files should have
	  extensions tacked on the end of them.

2004-03-31  Ted Gould <ted@gould.cx>

	* src/interface.cpp, src/interface.h, src/file.cpp:
	  Adding a cute little dialog to tell you if you are about to
	  overwrite a file you want to keep.  This fixes bug #911237

2004-03-30  Jon Phillips <kidproto@users.sf.net>

	* share/icons/icons.svg src/interface.cpp src/verbs.cpp src/verbs.h:
	  Added rest of icons for the menu. I think they are a good start.
	  There still needs to be continuity between styles, but at least
	  all needed icons are present. I didn't create icons for elements
	  that are going to be removed eventually.

	* share/tutorials/tipsandtricks.svg src/help.cpp src/interface.cpp:
	  Added this tutorial so that people can consolidate their information
	  onto this page.

2004-03-30  Ted Gould  <ted@gould.cx>

	* src/file.cpp, src/file.h, src/dialogs/filedialog-win32.cpp,
	  src/dialogs/filedialog.cpp, src/dialogs/filedialog.h
	  src/extension/system.cpp, src/extension/system.h,
	  src/extension/implementation/script.cpp:
	  Making all of the file operations have lists of the extensions
	  that can be used to save and open.  This also fixes the bug
	  which talks about mis-saving file without an error - there is
	  an error message now.  Probably not the most clear, but you
	  won't miss it.

2004-03-29  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/helper/bezier-utils-test.cpp: Finish the sp_bezier_fit_cubic test.

	* src/dyna-draw-context.cpp, src/mod360.cpp, src/mod360.h,
	src/Makefile.am: Move mod360 to new files mod360.cpp, mod360.h.
	Add unit test for it.

2004-03-28  Bryce Harrington <bryce@bryceharrington.com>

	* inkscape.cpp, inkscape.h, xml/repr-io.cpp, xml/repr.h:  Adding
	  better error handling for the situation where the
	  preferences.xml file is not successfully loaded.  In this case,
	  we want to suppress saving it, lest we overwrite the file with
	  the default skeleton preferences.

2004-03-28  Jon Phillips <jon@users.sourceforge.net>

	* src/interface.cpp src/select-toolbar.cpp src/verbs.cpp src/verbs.h:
	  Changed rotate verb to be SP_VERB_OBJECT_ROTATE_90_CW so that I can
	  now install SP_VERB_OBJECT_ROTATE_90_CCW.

	* share/icons/icons.svg src/interface.cpp src/select-toolbar.cpp
	  src/selection-chemistry.cpp src/selection-chemistry.h
	  src/verbs.cpp src/verbs.h: Added rotation 90 degrees CCW to the menu,
	  icons, and the interface. It was a pretty simple thing to do but was
	  not available on the interface.

2004-03-28  MenTaLguY <mental@rydia.net>

	* src/sp-gradient.cpp: request SP_OBJECT_MODIFIED_FLAG if gradient stops
	  are added or removed

2004-03-27  bulia byak <bulia@users.sourceforge.net>

	* src/main.cpp: Removed redundancy in error messages, reworded some

	* src/verbs.cpp src/toolbox.cpp src/nodepath.cpp src/inkscape.cpp
	src/extension/internal/ps.cpp src/main.cpp: Typos, reported by Arpad Biro

	* AUTHORS: Added John Cliff, Fred (long overdue), Adib

	* src/widgets/gradient-vector.cpp: John Cliff: multistage gradient editor

	* src/splivarot.cpp src/style.cpp src/xml/repr-util.cpp src/sp-polygon.cpp:
	Adib's svgostringstream patches
 
	* src/toolbox.cpp: All default buttons work correctly with undo, use freezing to
	prevent double changes; tooltip edits, formatting; defocusing on all widgets

	* src/display/nr-arena-image.cpp: Tentative fix for 906376: image always uses
	_P_P_P_ compositing

	* src/dialogs/item-properties.cpp: Refixing the slider 0.99 problem properly,
	reported by simarilius

	* src/help.cpp src/help.h src/interface.cpp: Expanded and split tutorial, all
	tutorials in submenu
 
	* src/sp-text.cpp: Do not write dx/dy if they only contain 0s

	* src/verbs.cpp src/verbs.h src/splivarot.cpp src/splivarot.h src/shortcuts.cpp:
	Inset/outset by pixels: commands, keys

	* src/preferences-skeleton.h: Default nudge 2pt

	* src/event-context.cpp: Increased accelerated-scroll delay

	* src/sp-text.cpp,h src/text-context.cpp: Clicking positions cursor closest to
	the click point

	* src/extension/internal/ps.cpp: Print dialog transient; Enter activates print;
	patches from sodi to flush stream and add boundingBox to PS output

	* src/dialogs/xml-tree.cpp: XML editor watches desktop change

	* src/sp-root.cpp: Fix from sodi: default preserveAspectRatio value

	* src/libnrtype/nr-type-w32.cpp: Fix for 915440 (from sodi)

2004-03-27 Peter Moulder <pmoulder@mail.csse.monash.edu.au>

	* src/dyna-draw-context.cpp (sp_dyna_draw_context_set):
	Tweak angle setting: prefer 0.0 instead of 360.0.

	* src/dyna-draw-context.h, src/dyna-draw-context.cpp: Cleanup:
	Greater conformance to CodingStyle.  Mostly whitespace changes.

2004-03-24  Ted Gould <ted@gould.cx>

	* src/extension/db.[ch]: Adding in functions to get lists of 
	  input and output extensions for the file dialogs

2004-03-25  Alexander Clausen <alex@skip86.com>
	
	* src/inkview.cpp Fix inkview crash on startup

2004-03-24  Ted Gould <ted@gould.cx>

	* Minor changes to get distcheck to work.

2004-03-24  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/draw-context.h, src/draw-context.cpp: Cleanup: greater
	conformance to CodingStyle.  Mostly whitespace changes.

2004-03-23  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/widgets/sp-widget.h, src/widgets/sp-widget.cpp
	(sp_widget_new_repr): Remove this unused function.

	* src/libnrtype/nr-rasterfont.cpp (nr_rasterfont_ensure_glyph_slot):
	Address compiler warning.

	* src/seltrans.cpp (sp_sel_trans_ungrab): Disable the persistent
	snapping stuff added 2004-02-19.

	* src/desktop-events.cpp (sp_dt_ruler_event): Minor cleanup.

2004-03-19  bulia byak <bulia@users.sourceforge.net>

	* src/selection-chemistry.cpp: Prevent it from scaling above 1e6 pt

	* src/preferences-skeleton.h src/dialogs/dialog-events.cpp: "Skip taskbar" hint
	for dialogs
 
	* src/selection-chemistry.cpp: Patch for copying gradients from johncliff

	* src/event-context.cpp: Increased accelerated-scroll delay

	* nr-pixops.h: INK_COMPOSE: Always-visible inversion compose method

	* sp-gradient.cpp: Default linear gradient goes through center
 
	* nr-plain-stuff.cpp: Tweaked checkerboard size and color
 
	* gradient-position.cpp: Inverse colors for handles, axes, and bbox; dragging
	snaps with Ctrl; radius handle in radial gradient
 
	* src/sp-rect.cpp src/sp-path.cpp: Finished fixing 918478

	* src/gradient-chemistry.cpp src/widgets/gradient-vector.cpp: Fix for 902319,
	remove some debug output
 
	* src/toolbox.cpp: Polygon mode off by default

	* src/toolbox.cpp: Crash fix, reported by David Christian Berg

	* src/radial.h src/nodepath.cpp: Moved Radial:: to nodepath.h for now

	* stringstream.h: New stream class for serialization

	* svg-path.cpp: Use new stream class

	* src/toolbox.cpp: Smarter Sharpness, r1 and r2 undistinguishable for the user

	* src/svg/svg-path.cpp: Restore mising break (fixes smearing for paths with h and v)

	* src/dialogs/align.cpp src/dialogs/transformation.cpp: Reverse pjrm's change in delete
	handlers (fixes crash on closing)

	* src/splivarot.cpp: Simplify threshold depends on selection size, not item size

	* src/select-toolbar.cpp: Reordered select toolbar buttons

	* icons.svg: Reworked selector toolbar icons

2004-03-17  Ted Gould <ted@gould.cx>

	* src/extension/db.h, src/extension/db.cpp, src/extension/extension.cpp,
	  src/extension/system.cpp: Changing the database stuff to be C++
	  object oriented (actually it wasn't OO before).  But this helps
	  as we start to connect to the File dialogs.

2004-03-16  Ted Gould <ted@gould.cx>

	* src/file.cpp,
	  src/file.h,
	  src/extension/Makefile.am,
	  src/extension/extension.cpp,
	  src/extension/extension.h,
	  src/extension/menu.cpp,
	  src/extension/system.cpp,
	  src/extension/implementation/implementation.cpp,
	  src/extension/implementation/implementation.h,
	  src/extension/implementation/script.cpp,
	  src/extension/implementation/script.h:
	 A few of changes.
	 1) removed the extensions menu stuff from the build as it seems
	    no one is using it.
	 2) Changing Filter to Effect internally to the extensions
	 3) Adding an exception to the save and open extensions to
	    signal a failure.  There is no way to test this currently,
	    but it doesn't break anything.

2004-03-16  jon phillips <kidproto@users.sf.net>

	* share/icons/icons.svg: Added a couple of icons but haven't linked them
	  to the code yet.

	* share/tutorials/elementsofdesign.svg: Added the first part of the
	  basic graphics for this tutorial.  I added boxes for the rest, which
	  I need to finish.  I need to use Bulia's tutorial top part to keep
	  the tutorials consistent.

2004-03-16  bulia byak <bulia@users.sourceforge.net>

	* nr-type-directory.cpp: Cache NRTypeFaceDef *, not NRTypeFace *, fixes 916155 

	* src/arc-context.cpp src/arc-context.h src/event-context.h src/rect-context.cpp
	src/spiral-context.cpp src/spiral-context.h src/star-context.cpp
	src/star-context.h src/toolbox.cpp: John Cliff's patch #2 for shape tools,
	with my fixes
 
	* icons.svg: Tweaks: stroke to curve, flip/rotate, text 

	* src/sp-ellipse.cpp: Fixes: SPArc never writes <ellipse>; in d=, no L to the center when start==end
 
	* src/nodepath.cpp: Fix for 916119 

	* src/widgets/icon.cpp: Remove not-enough-room-for-icon warning
 
	* src/dialogs/text-edit.cpp src/dialogs/dialog-events.cpp: Do not eat key events in the text view

2004-03-15  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/widgets/gradient-vector.cpp
	(sp_gradient_vector_widget_load_gradient, sp_gradient_vector_color_dragged):
	Cleanup: Convert to table-driven style.

	* src/style.cpp (sp_style_read_from_object): Additional check.

	* src/rect-context.cpp: Cleanup: Coding Style conformance,
	move declarations to first use.

	* src/sp-gradient.cpp (sp_gradient_rebuild_vector): Add assertion.

2004-03-15  Ted Gould <ted@gould.cx>

	* src/extension/extension.cpp:  Adding in some comments for my
	  previous checkin and also adding in the integer functions that
	  I forgot (but aren't used yet).

2004-03-14  Jon Phillips <jon@jonphillips.info>

	* src/toolbox.cpp src/verbs.cpp src/interface.cpp
	share/icons/icons.svg: Added all the icons in the VIEW
	menu. They might need some tweaking, but its a start. Also
	cleaned up some coding conventions for these files.

2004-03-14  Bryce Harrington <bryce@bryceharrington.com>

	* src/view.cpp:  Adding an accumulator function for checking
	  return values of shutdown signal handlers, so that if any one of
	  them returns a value indicating an abort of the shutdown, the
	  shutdown process will be aborted.

2004-03-14  Ted Gould <ted@gould.cx>

	* src/extension/extension.cpp, src/extension/extension.h,
	  src/extension/internal/ps.cpp: Adding in parameters for extensions.
	  This will make it so that extensions can have easy settings that
	  are used.  They are not currently persistent - but that will be
	  a future feature.

2004-03-14  MenTaLguY <mental@rydia.net>

	* src/ast/*: more AST sketching

	* src/xml/repr.cpp: existing listeners were getting dropped when new
	  listeners were added; this fix makes the behavior documented in
	  bug #896706 a little worse, but fixes bug #915913

	* src/sp-use.cpp: SPUse does not need to manually detach its child
	  anymore, so now it doesn't

	* src/sp-object.cpp: detach our SPRepr listener before we start
	  releasing our children, which makes listener removal faster (since
	  we are then always removing from the beginning of the listener
	  list -- i.e. removing in roughly the order in which they were added)
	  This should help bug #896706 a little more.

	* src/event-context.cpp, src/node-context.cpp, src/rect-context.cpp,
	  src/sp-object.cpp, src/sp-offset.cpp, src/dialogs/desktop-properties.cpp,
	  src/dialogs/xml-tree.cpp, src/widgets/sp-widget.cpp,
	  src/widgets/sp-xmlview-attr-list.cpp, src/widgets/sp-xmlview-tree.cpp,
	  src/xml/repr-private.h, src/xml/repr-util.cpp, src/xml/repr.cpp,
	  src/xml/repr.h:
	  SPObjects now ::write() immediately on attribute changes, if those
	  changes are "interactive" (i.e. from the XML editor); this fixes
	  the problem with SPStar's points= attribute updating (bug #910142)

	* src/sp-clippath.cpp, src/sp-mask.cpp, src/sp-namedview.cpp,
	  src/sp-root.cpp, src/sp-symbol.cpp:
	  simplified SPObject::remove_child handlers, focusing particularly
	  on making them not rely on the repr still being attached

	* src/sp-object.cpp: SPObject::remove_child is now invoked after
	  the repr has been removed (fixes bug #916188)

	* src/text-context.cpp: don't unparent the repr if it's already
	  been unparented (fixes bug #915435)

2004-03-14  rejon <jon@protofunk.org>

	* src/toolbox.cpp share/icons/icons.svg: Cleaned the file up to coding
	  standards. I also have begun to add new icons to our program.

2004-03-13  MenTaLguY <mental@rydia.net>

	* src/document.cpp: bumped the update limit on documents a bit
	  (bug #896076)

	* src/sp-text.cpp: SPString now copes with parents that don't have style
	                   information (comment on bug #896706)

	* src/xml/repr.cpp, src/xml/repr-private.h:
	  adding listeners is now O(1), which should make files which make heavy
	  use of <use> more tolerable; I decided to add an extra "last" pointer
	  rather than just prepending to the list (which would have reversed
	  its order, and make the common case for removal traverse the entire
	  list -- removal is still O(N) overall, but at least this way we usually
	  hit the best-case) (bug #896076)

2004-03-11  bulia byak <bulia@users.sourceforge.net>

	* src/sp-item.h src/sp-item.cpp: Restore i2root_affine: same as i2doc but
	without c2p, fixes 914039

	* src/selection-chemistry.cpp: Grouping z-order fix

	* src/path-chemistry.cpp: Combine/Break Apart fixes: preserve z-order and
	parent, diagnostics, multiple selected, cleanup, fixes

	* src/libnrtype/nr-type-directory.cpp: Fix win32 memory hog (unfreed
	g_ascii_tolower in ink_strstr), implement caching of looked-up faces

2004-03-10  bulia byak <bulia@users.sourceforge.net>

	* src/sp-offset.cpp: Coalesce threshold depends on item size (less transform),
	guarding against invalid item bbox, comments

	* src/sp-text.cpp: TODO comment for effective_dx/dy

	* src/splivarot.cpp src/preferences-skeleton.h: Inset/Outset handle multiple
	selections, preserve z-order and grouping; Simplify handles multiple
	selections, preserves z-order and grouping, threshold taken from prefs,
	accelerated

	* src/node-context.cpp src/text-context.cpp: Disregard groups when clicking

	* src/shortcuts.cpp: Ctrl+/ for division, ctrl-alt-/ for slice (cut path),
	bigger window for keys

	* src/rect-context.cpp src/rect-context.h: Knotholder, signals and listeners,
	selection by click, tolerance, Esc deselects

	* src/toolbox.cpp: Rect toolbar: Spinbuttons cosmetics, keys, defocusing,
	tooltips, fixes

	* src/shortcuts.cpp: Ctrl+e zooms to window, export is ctrl+shift+e now

	* src/selection-chemistry.cpp: Z-order fixes: Raise rewritten, diagnostics,
	relative raise/lower only for overlapping objects

	* src/verbs.cpp: raise/lower commands named more consistently

	* src/sp-item.cpp src/sp-item.h: Sorting function for items

	* src/selection-chemistry.cpp: fix for 910017

	* src/splivarot.cpp: Remove fill for slice

2004-03-09  rejon <jon@protofunk.org>

	* samples: Moved the contents of samples into the proper share dirs.

	* share/tutorials/tutorial.svg: Moved the default tutorial.svg to this
	  location.  It was in the wrong place.

	* share/tutorials/elementsofdesign.svg src/help.cpp src/interface.cpp:
	  Added the textual gloss of this new tutorial. I need to add some
	  more graphics to it. But I just wanted to first of all flesh out
	  the document so that others could chunk in graphics and so
	  forth.

2004-03-09  MenTaLguY  <mental@rydia.net>

	* src/ast/*: more AST work

	* src/sp-text.cpp: fixed uninitialized variable

	* src/sp-text.cpp: rewrote recursive character-counting algorithm

2004-03-08  MenTaLguY  <mental@rydia.net>

	* src/sp-text.cpp: fixes for initialization and updating of SPString

2004-03-07  MenTaLguY  <mental@rydia.net>

	* src/sp-item.cpp: the item's arenaitems shouldn't be destroyed until
	  its children have had a chance to clean up

	* src/sp-object.cpp: fix sp_object_reorder() to correctly handle
	  next == NULL

	* src/sp-item.cpp, src/sp-object-group.cpp, src/sp-object-repr.cpp,
	  src/sp-object.cpp, src/sp-object.h, src/sp-text.cpp, src/sp-use.cpp:
	  finished transition to SPObject::children

	* src/sp-text.cpp: reworked SPTSpan a bit so that it copes with
	  the child changes a little better with respect to SPTSpan::string

2004-03-06  MenTaLguY  <mental@rydia.net>

	* src/ast/*: initial work on AST code

	* src/libnr/nr-convex-hull-ops.h, src/libnr/nr-convex-hull.h,
	  src/libnr/nr-matrix-fns.h, src/libnr/nr-maybe.h,
	  src/libnr/nr-rect-ops.h:
	  basic cleanups and work on NR::ConvexHull

	* src/document.cpp, src/gradient-chemistry.cpp,
	  src/selection-chemistry.cpp, src/selection.cpp, src/sp-clippath.cpp,
	  src/sp-defs.cpp, src/sp-defs.h, src/sp-gradient.cpp, src/sp-gradient.h,
	  src/sp-item-group.cpp, src/sp-item-group.h, src/sp-item.cpp,
	  src/sp-item.h, src/sp-mask.cpp, src/sp-namedview.cpp,
	  src/sp-object-group.cpp, src/sp-object-group.h, src/sp-object-repr.cpp,
	  src/sp-object.cpp, src/sp-object.h, src/sp-pattern.cpp, src/sp-pattern.h,
	  src/sp-root.cpp, src/sp-text.cpp, src/sp-text.h,
	  src/widgets/gradient-vector.cpp:

	  children are now uniformly handled by SPObject

2004-03-05  bulia byak <bulia@users.sourceforge.net>

	* src/desktop.cpp src/preferences-skeleton.h: Autoscroll now accepts
	distance-from-edge parameter, may be negative, default is
	options.autoscrolldistance = -10

	* src/style.cpp src/style.h src/document.cpp: Store uri for paintsever and
	serialize it back instead of paintserver id. find_items functions do not find
	insensitive items by default.

	* src/sp-item.cpp: tentative fix: do not remove style attribute if
	write_difference fails or object has no parent

	* src/desktop-events.cpp: transientize guide dialog

	* splivarot.cpp, livarot/*: fred's new rasterizer, fixes

	* src/widgets/gradient-vector.cpp: fix 906301

	* src/dialogs/text-edit.cpp: do not rebuild text of object if not changed in the
	dialog, fixes 906279

	* src/selection.cpp: suppress a few meaningless warnings

	* src/xml/repr.cpp: fix for 907056, 906222

	* about.svg: redrawn from rejon's draft, with a highlight on lauris :)

	* libnrtype: Full font-variant, font-weight, font-stretch support. Better family
	and style matching algorithm. Support for generic families and multiple family
	specifications. Xft sees all font styles, reads pfa fonts again. Font styles
	are sorted in the list and use the native style names with Xft.

	* src/sp-text.cpp,h src/text-context.cpp: Keys, function for adjusting linespacing

	* keys.xml,svg,html: Linespacing keys

2004-03-05  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/draw-context.cpp (fit_and_split,
	sp_pencil_context_root_handler, spdc_add_freehand_point):
	* src/dyna-draw-context.cpp (sp_dyna_draw_timeout_handler,
	sp_dyna_draw_context_root_handler, fit_and_split_line,
	fit_and_split_calligraphics):
	Cleanups.

	* src/Makefile.am: Fix missing backslash at end of line.

2004-03-05  Ted Gould  <ted@gould.cx>
	* src/extension/impelementation/implementation.cpp,
	  src/extension/impelementation/implementation.h,
	  src/extension/impelementation/script.h,
	  src/extension/impelementation/script.cpp:
	Adding in some more comments and doing some general cleanup
	of the code.  It is getting better everyday.

2004-03-05  Ted Gould  <ted@gould.cx>

	* src/Makefile.am: Adding back in inkview.  This was fixed by
	Bob, but he didn't add it back in.  It's back in the build now.
	Thanks Bob for fixing my mistakes!

2004-03-04  Ted Gould  <ted@gould.cx>

	* src/extension/extension.h: Cleaning up and adding comments.

2004-03-04  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/livarot/Shape.cpp (Distance): Convert to DistanceLE(p, d)
	function returning true iff Distance(p) <= d.  (Saves 7% of total
	inkscape CPU time for "big scribbles" test cases.)  Update callers.

2004-03-04  Ted Gould  <ted@gould.cx>

	* src/extension/system.cpp, src/extension/system.h,
	  src/extension/extension.cpp, src/extension/extension.h,
	  src/extension/init.cpp, src/extension/internal/gnome.cpp,
	  src/extension/internal/ps.cpp, src/extension/internal/svg.cpp,
	  src/extension/internal/win32.cpp:
	Making it so that an implementation is a require element to
	build an extension.  This means that checking for one in every
	other function is not required.  Makes a touch more sense.

2004-03-04  Jon A. Cruz  <jon@joncruz.org>

	* src/file.cpp, src/interface.cpp, src/inkscape-stock.cpp,
	src/sp-image.cpp, src/helper/png-write.cpp,
	src/widgets/icon.cpp:
	Fixed filename/URI translation to keep UTF-8 internally.

2004-03-03  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/seltrans.cpp (sign):
	New function to replace `FOO / fabs(FOO)' expressions in various places.
	* src/seltrans.cpp (sp_sel_trans_stretch_request, sp_sel_trans_stretch):
	Fix #906221.  Also change the behaviour to allow growing.

	* src/libnr/nr-scale.h: operator[]: new versions returning writable reference.

	* src/desktop-snap.h, src/desktop-snap.cpp
	(sp_desktop_vector_snap_list):
	Change final arg from NR::Point to NR::scale.  Update callers.

2004-03-02  Ted Gould  <ted@gould.cx>

	* src/Makefile.am, src/print.cpp,
	  src/extension/db.cpp, src/extension/db.h, 
	  src/extension/extension.cpp, src/extension/extension.h, 
	  src/extension/system.cpp, src/extension/system.h, 
	  src/extension/init.cpp, src/extension/menu.cpp, 
	  src/extension/impelementation/Makefile.am,
	  src/extension/impelementation/implementation.cpp,
	  src/extension/impelementation/implementation.h,
	  src/extension/impelementation/script.h,
	  src/extension/impelementation/script.cpp,
	  src/extension/internal/gnome.cpp, src/extension/internal/gnome.h, 
	  src/extension/internal/ps.cpp, src/extension/internal/ps.h, 
	  src/extension/internal/svg.cpp, src/extension/internal/svg.h, 
	  src/extension/internal/win32.cpp, src/extension/internal/win32.h:

	  Turning the extensions stuff into having C++ objects instead
	  of GTK+ objects.  This affected a lot of files.

2004-03-02  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/helper/curve.h, src/helper/curve.cpp
	(sp_curve_new_from_foreign_bpath and many static functions):
	Mark various ArtBpath[] parameters as not being written to.

	* src/draw-context.cpp (fit_and_split): Fix to fix to edge case in
	freehand tool.  (Hopefully to be replaced by different approach.)

	* src/dialogs/transformation.cpp (sp_transformation_move_apply,
	sp_transformation_scale_apply, sp_transformation_rotate_apply,
	sp_transformation_skew_apply):
	Remove unused `copy' parameter.  Update caller.

	* src/dialogs/align.cpp, src/dialogs/transformation.cpp: Cleanups.

	* src/display/nr-arena-shape.cpp (nr_arena_shape_set_path):
	Remove affine argument (all current callers were passing NULL) and
	unused `lieutenant' argument.  Update callers.

	* src/selection-chemistry.h, src/selection-chemistry.cpp
	(sp_selection_delete, sp_selection_duplicate, sp_edit_clear_all,
	sp_edit_select_all, sp_selection_group, sp_selection_ungroup,
	sp_selection_raise, sp_selection_raise_to_top, sp_selection_lower,
	sp_selection_lower_to_bottom, sp_selection_cut, sp_selection_copy,
	sp_selection_paste, sp_selection_paste_style):
	Remove unused parameters.  Update callers.

2004-03-01  Nathan Hurst <njh@mail.csse.monash.edu.au>

	* src/draw-context.cpp: Fixed edge case in freehand tool.  Added
	comment about curve fitting.

2004-03-01  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/sp-guide.cpp (sp_guide_set_property, sp_guide_get_property):
	Minor cleanups.

	* src/interface.h, src/interface.cpp
	(sp_ui_new_view, sp_ui_new_view_preview): Make static.

	* src/dyna-draw-context.cpp (sp_ddc_defaults):
	* src/rect-context.cpp (sp_rc_defaults): 
	Cleanup: Use table and loop instead of copy&paste.

	* configure.in: If -Wno-unused-parameter isn't recognized (g++ 3.2 and
	earlier) then use -Wno-unused.

	* src/libnr/nr-point.h: NR::Point: Add explicit copy constructor and
	operator= in the hope of fixing #907059.

	* src/desktop-events.cpp (sp_dt_ruler_event): NR::Point'ification.

	* src/selection.cpp (sp_selection_item_selected):
	* src/seltrans.cpp (sp_sel_trans_stretch_request):
	* src/display/nr-arena-shape.cpp (shape_run_A8_OR):
	* src/livarot/PathStroke.cpp (DoJoin):
	* src/livarot/ShapeMisc.cpp (ReFormeBezierTo):
	Address compiler warnings.

2004-02-28  Jon Phillips <jon@protofunk.org>

	* share/*: Move extensions, icons, and made a new folder screens
	for screens that are pulled up in using inkscape.  Please test
	this heavily as it implements the most troublesome chunks of the
	directory reorganization.

	* Makefile.am, Makefile.mingw, config.h.mingw, configure.in:
	Changed to coincide with the new changes.

2004-02-28  Nathan Hurst <njh@mail.csse.monash.edu.au>

	* src/nodepath.cpp,h: Moved radial to class Radial.  Moved
	NodePath into namespace Path and partially classified.

2004-02-28  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/nodepath.cpp: Mark several functions as static.

	* src/dialogs/stroke-style.cpp: Rename DEBUG_MARKERS ifdef to
	WITH_MARKER_GUI, and make more things conditional on it.
	(Fixes failing assertion for the !defined case.)

2004-02-27  Alexander Clausen <alex@skip86.com>

	* src/desktop-events.cpp: fix my last fix *sigh*

	* src/inkview.cpp: fix inkview crash when none of the files 
	on commandline exist, add very basic error reporting

2004-02-27  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/dialogs/stroke-style.cpp (sp_stroke_style_set_marker_buttons):
	Cleanup: restructure.

	* src/dialogs/Makefile.am: in-dt-coordsys.cpp, in-dt-coordsys.h:
	New files.
	* src/dialogs/xml-tree.cpp (set_dt_select): Fix bug when clicked on a
	shape that's a descendent of a <defs> node: don't try to select it
	in the canvas.

2004-02-26  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/dialogs/stroke-style.cpp:
	Fix: free marker_xpm[i] instead of marker_xpm.
	Misc cleanups.

	* src/Makefile.am: New files extract-uri.cpp, extract-uri.h.
	New unit test extract-uri-test.cpp.
	* src/style.cpp (extract_uri): Move to src/extract-uri.cpp, and fix.

	* src/Makefile.am (inkscapelib_src):
	marker-status.h, marker-status.cpp: New files.
	* src/dialogs/stroke-style.cpp, src/sp-shape.cpp, src/style.cpp:
	Change marker debugging status messages from conditional g_message
	to unconditional marker_status call.

	* src/dialogs/stroke-style.cpp (marker_id_to_string):
	Remove unused function.

2004-02-24  Alexander Clausen <alex@skip86.com>

	* src/desktop-events.cpp: Fix crash when opening the guide dialog for
	the second time

2004-02-24  bulia byak <bulia@users.sourceforge.net>

	* src/helper/sodipodi-ctrlrect.cpp: A smart always-visible inversion for ctrlrect border 

	* src/select-toolbar.cpp: Fix for 873723

	* src/style.h src/style.cpp: write_difference only writes what is .set in the target style

	* src/selection-chemistry.cpp: Paste style merges the style of the clipboard
	with the object's current style

	* src/xml/repr-io.cpp: Do not cut leading/trailing whitespace on text nodes,
	only reject all-whitespace nodes

	* src/pixmaps/handles.xpm src/seltrans.cpp src/knot.cpp src/nodepath.cpp
	src/helper/sodipodi-ctrl.cpp: Changed xor compositing for ctrls, made seltrans
	handles inverse, tweaked knot colors

	* doc/keys-html.xsl doc/keys.html: keys.html now validates

	* src/desktop.cpp src/desktop.h: New function to autoscroll desktop so a point
	becomes visible

	* src/rubberband.cpp src/select-context.cpp src/nodepath.cpp: Use the new
	function to scroll desktop to a point

	* src/desktop.cpp src/preferences-skeleton.h: options.autoscrollspeed 

2004-02-24  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/libnr/nr-matrix.h: Add `explicit' to Matrix constructors
	from rotate/scale/translate, to reduce the number of mysterious
	implicit conversions used in client code.
	Don't #include nr-rotate-ops.h, nr-scale-ops.h, nr-translate-ops.h.

	* src/selection-chemistry.cpp (sp_selection_apply_affine):
	Change final argument from double[6] to NR::Matrix.
	Update callers.
	(sp_selection_scale_relative): Change from dx,dy to NR::scale argument.
	Update callers.
	(sp_selection_scale, sp_selection_scale_times): Cleanup.

	* src/libnr/Makefile.am:
	New files nr-rotate-test.cpp, nr-scale-test.cpp, nr-translate-test.cpp.
	* src/libnr/nr-matrix-test.cpp: Move lots of things to the new files.
	Add tests for the operator* additions of 2004-02-23.
	Don't #include .cpp files where linking against them suffices.

	* src/livarot/Makefile.am (Path_test_LDADD): Fix order of libs.

	* src/select-toolbar.cpp (sp_object_layout_any_value_changed):
	NR::Matrix'ification.

2004-02-23  MenTaLguY <mental@rydia.net>

	* src/selection-chemistry.cpp, src/selection-chemistry.h,
	  src/seltrans.cpp, src/seltrans.h, src/verbs.cpp,
	  src/dialogs/transformation.cpp, src/libnr/nr-point-fns.h,
	  src/libnr/nr-point.h, src/libnr/nr-rect.h: more NRPoint removal

2004-02-23  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/sp-item-transform.cpp (sp_item_rotate_rel):
	Use NR::Rect and .midpoint.

	* src/dropper-context.cpp (sp_dropper_context_root_handler):
	* src/sp-text.cpp (sp_string_set_shape):
	Cleanup: use translate rather than setting individual matrix elements.

	* src/libnr/nr-matrix-ops.h (operator*: Matrix*rotate, translate*scale,
	scale*translate, Matrix*scale): New functions.

2004-02-22  Ted Gould <ted@gould.cx>

	* src/extension/Makefile.am, src/extension/implementation/Makefile.am,
	src/Makefile.am, po/POTFILES.in, po/*.po (because of previous change):
	Okay, I screwed up.  Here are some distcheck fixes for various
	things.  Still not entirely clean.  But these are much closer
	than we were.

2004-02-22  Ted Gould <ted@gould.cx>

	* src/modules -> src/extensions:
	Changing the directory name so that it fits the new naming
	conventions that we're working with.

2004-02-23  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/desktop.cpp (sp_desktop_init, sp_desktop_set_display_area):
	* src/libnrtype/nr-font.cpp (nr_font_generic_glyph_outline_get):
	* src/libnrtype/nr-typeface.cpp (nr_font_new_default):
	Don't use implicit NR::Matrix conversions.

	* src/libnr/nr-translate-ops.h (operator!=): new.

	* src/sp-item.h, src/sp-item.cpp (sp_item_bbox_desktop):
	Add NR::Rect version.

	* src/inkview.cpp: Address compiler warning: declare is_jar iff it is
	defined, i.e. #ifdef WITH_INKJAR.

	* src/desktop-snap.cpp, src/desktop.h, src/object-edit.cpp,
	src/sp-root.cpp, src/livarot/PathConversion.cpp,
	src/widgets/sp-color-wheel.cpp:
	Add some #include's to reduce how much nr-matrix.h must pull in.

	* src/desktop-affine.cpp, src/knotholder.cpp,
	src/desktop-events.cpp, src/nodepath.cpp, src/sp-ellipse.cpp,
	src/sp-image.cpp, src/sp-item-notify-moveto.cpp, src/sp-rect.cpp,
	src/text-context.cpp:
	#include libnr/nr-matrix-ops.h.

2004-02-22  Ted Gould <ted@gould.cx>

	* doc/Makefile.am, po/POTFILES.in: keeping these up to date
	for distchecks.

2004-02-21  Ted Gould <ted@gould.cx>

	* extensions/txt2svg.inkmod, extensions/txt2svg.pl:
	Adding a script that Bryce wrote that will take in text.  Plus
	the inkscape module file to make it so that you can open text
	files in Inkscape.

2004-02-21  MenTaLguY <mental@rydia.net>

	* src/xml/repr-util.cpp, src/xml/repr.h: added RDF namespace by default

	* src/inkscape.cpp, src/inkscape.h, src/widgets/sp-widget.cpp,
	  src/inkview.cpp: nuked global 'inkscape' variable and replaced
	  it with a module-local variable and an accessor function.

	* src/uri.h, src/uri.c: added native filename to/from thingy

2004-02-20  bulia byak <bulia@users.sourceforge.net>

	* src/text-context.cpp: [shift+]alt+arrows to kern

	* src/sp-text.cpp,h: Complete support for dx/dy vectors, including inheritance
	as per SVG spec. Preserve dx/dy lists in editing. Function to adjust dx/dy by
	screen pixels.

	* src/svg/svg-length.cpp: Function to read length in absolute units
	only. Function to read a length into a float instead of SPSVGLength. Function
	to read a length vector into a list of SPSVGLength's.

	* src/sp-root.cpp src/sp-image.cpp src/sp-offset.cpp src/sp-spiral.cpp:
	Eliminated sp_svg_length_read_ldd calls and ugly repetitive unit checks, used
	sp_svg_length_read_[computed_]absolute instead.

	* doc/keys.xml doc/keys.html icons/keys.svg: Updated guide and grid
	shortcuts. Added paste in place, more notes. Added kerning keys and notes.

	* src/libnrtype/nr-type-ft2.cpp: Crash fix, patch 895344.
 
	* src/sp-namedview.cpp src/sp-namedview.h: Proper showguides support, functions
	for toggling guides and grid.

	* src/desktop-events.cpp: Turn showguides on when creating a new guide.
 
	* src/verbs.cpp: Used the new toggle functions for showguides and showgrid.

	* src/interface.cpp: Added Guides to View.
 
	* src/xml/repr-util.cpp: sp_repr_get_boolean fix.

	* src/dialogs/desktop-properties.cpp: Reenabled showguides support, added
	namedview listener to reflect outside changes to the namedview.

2004-02-20  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* Lots of files: Refine #include's according to reorganization of
	libnr/nr-types.h and libnr/nr-matrix.h.

	* src/libnr/Makefile.am (libnr_a_SOURCES):
	nr-coord.h nr-dim2.h nr-i-coord.h nr-matrix-ops.h nr-point-l.h
	nr-point-ops.h nr-point.h nr-rect-l.h nr-rotate.h nr-rotate-ops.h
	nr-scale-ops.h nr-scale.h nr-translate-ops.h nr-translate.h:
	New files; code moved from nr-types.h and nr-matrix.h.
	* src/libnr/nr-matrix.h:
	* src/libnr/nr-types.h:
	#include the new files.

	* src/desktop-affine.h, src/desktop-affine.cpp
	(sp_desktop_w2d_xy_point, sp_desktop_d2w_xy_point,
	sp_desktop_w2doc_xy_point, sp_desktop_doc2w_xy_point,
	sp_desktop_d2doc_xy_point, sp_desktop_doc2d_xy_point,
	sp_desktop_root2dt_xy_point, sp_desktop_dt2root_xy_point):
	Remove old NRPoint versions of these functions.

	* src/select-toolbar.cpp:
	* src/toolbox.cpp:
	* src/widgets/spw-utilities.cpp:
	Remove unused #include sp-item-transform.h.

	* src/sp-item-transform.cpp (sp_item_rotate_rel): NR::Matrix'ification.

	* src/sp-item-transform.h, src/sp-item-transform.cpp
	(sp_item_scale_rel, sp_item_skew_rel): Remove these unused functions.

	* src/sp-item-transform.h, src/sp-item-transform.cpp
	(sp_item_rotate_rel, sp_item_move_rel): Change from pair of points to
	NR::rotate and NR::translate respectively.  Update callers.

	* src/node-context.cpp (sp_node_context_root_handler):
	* src/rect-context.cpp (sp_rect_context_root_handler):
	* src/zoom-context.cpp (sp_zoom_context_root_handler):
	NR::Point'ification and var cleanup.

	* src/event-context.cpp
	(sp_event_context_private_root_handler, set_event_location):
	* src/dialogs/align.cpp (sp_align_arrange_clicked): 
	NR::Point'ification.

	* src/desktop.h (sp_desktop_zoom_relative_keep_point,
	sp_desktop_scroll_world): Add NR::Point version.

2004-02-19  Johan Ceuppens <jceuppen@easynet.be>

	* src/inkjar/jar.cpp, src/inkjar/jar.h src/inkview.cpp:
	inkview accepts .jar archives of SVG files on the command line.

2004-02-19  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/Makefile.am: sp-item-rm-unsatisfied-cns.cpp,
	sp-item-rm-unsatisfied-cns.h, sp-guide-attachment.h,
	sp-item-notify-moveto.cpp, sp-item-notify-moveto.h,
	sp-guide-constraint.h, satisfied-guide-cns.cpp,
	satisfied-guide-cns.h, sp-item-update-cns.cpp,
	sp-item-update-cns.h: New files.
	* src/desktop-events.cpp (sp_dt_guide_event):
	* src/seltrans.cpp (sp_sel_trans_ungrab):
	* src/sp-guide.cpp (sp_guide_moveto, sp_guide_remove):
	* src/sp-guide.h:
	* src/sp-item.cpp (sp_item_set):
	* src/sp-item.h:
	Make snap-to-guide more persistent.  (Still not saved to XML though.)

	* src/sp-spiral.cpp (sp_spiral_fit_and_draw, sp_spiral_set_shape):
	Address NRPoint warning.

	* src/widgets/icon.cpp (sp_icon_paint): Cleanup.

	* src/libnr/nr-types.h: Change deprecated-cast warning from runtime
	to compile-time.

	* src/helper/sp-canvas.h, src/helper/sp-canvas.cpp
	(sp_canvas_world_pt_inside_window): New function.

2004-02-18  MenTaLguY <mental@rydia.net>

	* src/widgets/icon.cpp, src/widgets/icon.h: rewrote to use gdk for
	  compositing; now it looks tolerable with ANY theme!

	* src/dialogs/item-properties.cpp: slight stabs at implementing "visible"

	* src/libnr/nr-types.h: added warning for deprecated casts

2004-02-18  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/dialogs/align.cpp (sp_align_arrange_clicked): Cleanup.

	* src/sp-item-transform.cpp (sp_item_move_rel): NR::Matrix'ification.

	* src/desktop-events.cpp (sp_dt_guide_event): Get guide line dialog
	working again: double-click on a guide to show the guide dialog.

	* src/utest/utest.h (UTEST_NAMED_ASSERT):
	Wrap this macro in static_cast<void>().

2004-02-17  MenTaLguY <mental@rydia.net>

	* src/interface.cpp: fixed signal connection in recent items menu

	* src/file.cpp: fix compile and pass UTF-8 "URIs" down to module code

2004-02-17  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/sp-guide.h, src/sp-guide.cpp (sp_guide_moveto,
	sp_guide_position_set):
	Combine into a single sp_guide_moveto routine accepting a `commit'
	argument.  Update callers.

2004-02-16  MenTaLguY <mental@rydia.net>

	* src/interface.cpp: fixed bug with underscores in 'open recent' filenames

	* src/libnr/nr-rect.h, src/libnr/nr-types.h: moved NR::Rect to nr-rect.h,
	  minor updates

	* src/libnr/nr-maybe.h: continued work on maybe implementation

	* src/libnr/nr-types.h, src/libnr/nr-rect.cpp, src/libnr/nr-maybe.h,
	  src/seltrans.cpp:
	  started on revising the NR::Rect stuff, and introduced NR::ConvexHull

2004-02-16  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/xml/repr.cpp (sp_repr_document_root): Fix typo in most recent commit.

2004-02-14  MenTaLguY <mental@rydia.net>

	* src/svg/svg-path.cpp: switched to locale-safe iostreams-based path
	  serialization.

	* src/xml/repr-io.cpp, src/xml/repr.cpp, src/widgets/sp-xmlview-tree.cpp,
	  src/widgets/sp-xmlview-content.cpp, src/dialogs/xml-tree.cpp:
	  basic support for XML comments

2004-02-14  bulia byak <bulia@users.sourceforge.net>

	* src/dialogs/dialog-events.cpp: Added UTILITY hint to sp_transientize() 

	* po/fr.po: Update from f.rodrigo@tuxfamily.org 

	* src/interface.cpp: Fix for underscore in the recent files menu, by alxrem 

	* src/event-context.cpp src/preferences-skeleton.h: Accelerated scrolling by Ctrl-arrows

	* src/event-context.cpp: Ctrl-middle-click zooms in

	* doc/keys.xml doc/keys-svg.xsl doc/keys-html.xsl doc/keys.html icons/keys.svg:
	Updated middle and right buttons scroll/zoom, cosmetics

	* src/shortcuts.cpp: Menu shortcut fix 

	* src/verbs.cpp,h: New verb: deselect 

	* src/selection.cpp,h: Removed unused function

	* src/interface.cpp: Removed Edit/Clear All, added Edit/Deselect. Comment fix

	* src/toolbox.cpp: Spelling fix: symmetric, not symmetrical

	* src/desktop.cpp,h: sp_desktop_point(): returns mouse point in document coordinates

	* src/selection-chemistry.cpp,h: sp_selection_paste obeys in_place parameter

	* src/verbs.cpp src/verbs.h src/shortcuts.cpp: Paste in place verb, shortcut 

	* src/interface.cpp: Paste In Place command in Edit

	* src/selection-chemistry.cpp: Toolbar message fix 

2004-02-14  MenTaLguY <mental@rydia.net>

	* src/libnr/nr-types.h: added intersects() and contains() tests
	  for points and rects

2004-02-13  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/selection.cpp (sp_selection_snappoints):
	* src/sp-image.cpp (sp_image_snappoints):
	* src/sp-item.cpp (sp_item_private_snappoints):
	Don't use more than two opposite points of bounding box.

	* src/seltrans.cpp (sp_show_handles): Add precondition !seltrans.empty.
	* src/proofs: Update accordingly.
	* src/seltrans.cpp: Change seltrans from pointer to reference in
	several places.

2004-02-13  Johan Ceuppens  <jceuppen@easynet.be>

	* src/inkjar/{jar.cpp,jar.h}: changed some file offsets,
	uncompressing multiple files in a jar works now. There
	is an improved testing program at the end of jar.cpp.

2004-02-12  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/seltrans.cpp (sp_sel_trans_update_volatile_state):
	Minor cleanups.

	* src/desktop-snap.h, src/desktop-snap.cpp
	(sp_desktop_horizontal_snap, sp_desktop_vertical_snap,
	sp_desktop_horizontal_snap_list_scale,
	sp_desktop_vertical_snap_list_scale,
	sp_desktop_horizontal_snap_list_skew,
	sp_desktop_vertical_snap_list_skew):
	Remove these now-unused functions.

	* src/arc-context.cpp (sp_arc_drag):
	* src/rect-context.cpp (sp_rect_drag):
	Simplification: use sp_desktop_dim_snap instead of
	sp_desktop_horizontal_snap / sp_desktop_vertical_snap.

	* src/desktop-snap.cpp (sp_desktop_vector_snap): Minor cleanups.

	* src/libnr/Makefile.am, src/libnr/nr-point-fns-test.cpp:
	New unit test file nr-point-fns-test.cpp.

	* src/libnr/nr-point-fns.h, src/libnr/nr-point-fns.cpp (unit_vector):
	New function.

	* src/livarot/Path.h: Trim unnecessary includes.

	* src/livarot/LivarotDefs.h: #include <stdint.h> (moved from Path.h).

	* src/livarot/PathOutline.cpp, src/livarot/PathSimplify.cpp,
	src/livarot/PathStroke.cpp, src/sp-offset.cpp:
	#include libnr/nr-point-fns.h.

2004-02-12  MenTaLguY <mental@rydia.net>

	* src/xml/repr-util.cpp, src/xml/repr.h: pruned some obsolete
	  functions

2004-02-12  Johan Ceuppens  <jceuppen@easynet.be>

	* configure.in src/Makefile.am: --with-inkjar (default no)
	* src/inkjar/Makefile.am src/inkjar/jar.cpp src/inkjar/jar.h:
	inital import of libinkjar, this can be moved to LGPL after
	rewriting the macros.

2004-02-11  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/seltrans.cpp (sp_sel_trans_handle_new_event,
	sp_sel_trans_handle_request): NR::Point'ification.

	* src/seltrans-handles.cpp, src/seltrans-handles.h, src/seltrans.cpp: 
	Preserve constness of SPSelTransHandle's.

	* src/sp-item.h, src/sp-item.cpp (sp_item_set_item_transform):
	Make static.  Use NR::Matrix, and avoid NULL special case.
	Update callers.

	* src/sp-item.h, src/sp-item.cpp (sp_item_set_i2d_affine):
	Get rid of NRMatrix version.
	Calculate 1.25 directly rather than less accurate reciprocal of 0.8.

	* src/libnr/nr-matrix.h, src/libnr/nr-matrix.cpp (matrix_equalp):
	New function.
	(assert_close): Use matrix_equalp.

	* src/seltrans.h, src/seltrans.cpp (sp_sel_trans_transform):
	Get rid of non-NR::Point version.  Make affine argument const.
	Update callers.

	* src/desktop-events.cpp (sp_dt_guide_event): NR::Point'ification.

	* src/view.h (sp_view_set_position): Add NR::Point version.

	* src/desktop.h (sp_desktop_set_coordinate_status):
	Add NR::Point version.

2004-02-09  bulia byak <bulia@users.sourceforge.net>

	* doc/keys.xml doc/keys-svg.xsl: Keys and Mouse Reference: source, SVG stylesheet
 
	* icons/keys.svg: Keys SVG chart (generated, do not edit)
 
	* icons/Makefile.am: Added keys.svg
 
	* src/help.cpp src/help.h src/interface.cpp: Added Keys and Mouse command
 
	* doc/keyboard-shortcuts.txt Obsoleted, removed

	* doc/keys-html.xsl doc/keys.html: Keys reference in HTML, stylesheet for HTML

	* doc/Makefile.am: updated
 
	* src/libnr/nr-pixblock.cpp: A better fix for 859364
 
	* src/libnrtype/nr-rasterfont.cpp: Reverting my previous fix for 859364, a better
	one is in nr-pixblock.cpp

	* icons/tutorial.svg: Switched to Bitstream Vera, updated tutorial

	* src/file.cpp: Fix for save bug 891852
 
	* src/preferences-skeleton.h: transientpolicy=1 again
 
	* src/nodepath.cpp: Ctrl-Alt-drag fix in point_line_closest()
 
	* src/select-toolbar.cpp: Small space before unit selector
 
	* src/widgets/paint-selector.cpp: Hidden buttons removed 

2004-02-09  MenTaLguY <mental@rydia.net>

	* src/interface.cpp: disabled the autoraise checkbox on Windows

	* src/widgets/paint-selector.cpp, src/widgets/paint-selector.h:
	  removed unused selector-type buttons (with Bulia)

2004-02-09  Jon A. Cruz  <jon@joncruz.org>

	* src/widgets/sp-color-wheel.h, src/widgets/sp-color-wheel.cpp,
	src/widgets/sp-color-wheel-selector.h,
	src/widgets/sp-color-wheel-selector.cpp,
	src/widgets/sp-color-gtkselector.cpp,
	src/widgets/sp-color-notebook.cpp
	Added new, smaller color wheel selector.

2004-02-09  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/desktop-affine.cpp, src/desktop-snap.cpp,
	src/desktop-snap.h, src/desktop.cpp, src/knotholder.cpp,
	src/nodepath.cpp, src/selection-chemistry.cpp, src/seltrans.cpp,
	src/seltrans.h, src/sp-ellipse.cpp, src/sp-image.cpp,
	src/sp-item.cpp, src/sp-item.h, src/sp-rect.cpp, src/sp-root.cpp,
	src/text-context.cpp, src/dialogs/xml-tree.cpp,
	src/libnr/Makefile.am, src/libnr/nr-matrix.cpp,
	src/libnr/nr-matrix.h, src/libnr/nr-types.h,
	src/libnrtype/nr-rasterfont.cpp, src/livarot/Path.h,
	src/livarot/PathConversion.cpp, src/livarot/PathSimplify.cpp,
	src/livarot/ShapeSweep.cpp, src/widgets/gradient-position.cpp,
	src/widgets/sp-color-wheel-selector.cpp,
	src/widgets/sp-color-wheel.cpp:
	Change matrices to be suitable for right multiplication.
	(Also miscellaneous cleanups as mentioned below.)

	* src/widgets/sp-color-wheel-selector.cpp
	(sp_color_wheel_selector_get_type):
	Address harmless warning: add value_table initializer.

	* src/display/nr-arena-group.h, src/display/nr-arena-group.cpp
	(nr_arena_group_set_child_transform): Add NR::Matrix version.

	* src/verbs.cpp: Add g++-2.95 portability for hash_map.
	(Still using hash_map, though, not yet GHashTable.)

	* src/uri-references.h (operator=): Remove definition, forcing link
	errors for accidental usage.

	* src/sp-chars.h, src/sp-chars.cpp (sp_chars_add_element):
	Add NR::Matrix version.

	* src/selection.cpp (sp_selection_snappoints): Performance fix: add
	just 4 corner points, not a thousand.

	* src/print.h, src/print.cpp (sp_print_bind): Add NR::Matrix version.

	* src/inkscape.cpp: #include sys/types.h, sys/stat.h.

	* src/desktop.h (SP_DESKTOP_ZOOM): Define in terms of expansion()
	function instead of implicit casting.

	* src/arc-context.cpp, src/document.cpp, src/draw-context.cpp,
	src/selection.cpp, src/selection.h,
	src/sp-ellipse.cpp, src/sp-gradient.cpp, src/sp-image.cpp,
	src/sp-namedview.cpp, src/sp-offset.cpp, src/sp-rect.cpp,
	src/sp-spiral.cpp, src/sp-star.cpp,
	src/sp-text.cpp, src/bonobo/canvas-translator.cpp:
	Cleanups: greater conformance to Coding_Style, combine declaration
	and first assignment of some vars.

2004-02-08  MenTaLguY <mental@rydia.net>

	* src/interface.cpp: added "Autoraise Dialogs" menu item to toggle
	  the transient policy thing

2004-02-08 Bryce Harrington <brycehar@bryceharrington.com>

	* src/sp-namedview.cpp: This assert appears to serve no purpose
	  except to cause Inkscape to crash when the user chooses to
	  exit the app when the XML editor is open.  Commenting out the
	  assert doesn't seem to cause any particular untoward behavior.

	* src/xml/: repr.cpp, repr.h: Hacking in a check to prevent
	  deletion of the namedview entity, in order to close bug
	  Inkscape Bug #850971.

2004-02-07 Johan Ceuppens <jceuppen@easynet.be> 
	* src/libnrtype/nr-type-gnome.cpp src/libnrtype/nr-type-directory
	  src/libnrtype/nr-type-xft.cpp src/widgets/font-selector.cpp 
	  src/print.cpp src/module.h src/module.cpp
	  modules/gnome.cpp: activated --with-gnome-print
	  libnrtype/nr-type-primitives.h: removed possible gchar signedness
	  bug.

2004-02-07  Nathan Hurst <njh@mail.csse.monash.edu.au>

	* src/widgets/gradient-position.*: modified the gradient knot
	  editor to manipulate the knots, rather than rebuilding a gradient
	  from scratch each time.

2004-02-07  MenTaLguY <mental@rydia.net>

	* src/xml/repr.h, src/xml/repr-util.cpp:

	  cleaned up old code in #if 0 sections

	* src/display/canvas-arena.cpp, src/display/nr-arena-glyphs.cpp,
	  src/display/nr-arena-item.cpp, src/display/nr-arena-shape.cpp,
	  src/display/nr-arena.cpp, src/display/nr-arena.h:

	  cleaned up old code in #if 0 sections

	* src/desktop-affine.cpp, src/desktop.cpp, src/draw-context.cpp,
	  src/dropper-context.cpp, src/dyna-draw-context.cpp,
	  src/seltrans.cpp, src/sp-root.cpp, src/sp-text.cpp,
	  src/libnr/nr-macros.h, src/libnr/nr-types.h, src/libnr/nr-matrix.h,
	  src/libnr/nr-matrix.cpp, src/libnrtype/nr-font.cpp,
	  src/libnrtype/nr-rasterfont.cpp, src/livarot/PathSimplify.cpp,
	  src/livarot/ShapeSweep.cpp:

	  The array data member of NR::Matrix is now private; use the
	  [] operator to access elements individually.  More matrix routines
	  now pass by reference, and the casting operators to cast to NRMatrix
	  no longer leak memory (by allocating temporary objects that were
	  never freed).

	* src/modules/db.cpp: cleaned up some very grotty code that gcc 3.4
	  (rightly) refused to compile

	* src/xml/repr-action.cpp: undo of content changes was pulling
	  from the wrong union member (note to self: unions = evil)
	  This fixes the problem with text editing undos yielding the wrong
	  apparent undo order (bug #861462).

2004-02-05  bulia byak <bulia@users.sourceforge.net>

	* src/sp-text.cpp src/sp-text.h: Function to adjust letterspacing

	* src/style.cpp: Comments

	* src/text-context.cpp: Alt+<> adjust letterspacing

	* src/helper/png-write.cpp: PNG comment: Software: www.inkscape.org

	* src/text-context.cpp: Support keypad keys, keypad +/- always zoom even when editing

	* src/shortcuts.cpp: Enable keypad Del

	* src/event-context.cpp: Enable keypad arrows with Ctrl to scroll canvas

	* src/zoom-context.cpp src/rect-context.cpp src/arc-context.cpp src/star-context.cpp
	src/spiral-context.cpp src/draw-context.cpp src/dyna-draw-context.cpp
	src/text-context.cpp src/dropper-context.cpp: Swallow keypad up/down keys too,
	preventing them from focusing the zoom field

2004-02-05  Jon Phillips <kidproto@users.sf.net>

	*  src/dialogs/item-properties.cpp, src/dialogs/item-properties.h, 
	   src/dialogs/object-attributes.cpp, src/dialogs/object-attributes.h, 
	   src/dialogs/object-properties.cpp, src/dialogs/object-properties.h, 
	   src/dialogs/sp-attribute-widget.cpp, src/dialogs/sp-attribute-widget.h, 
	   src/dialogs/stroke-style.cpp, src/dialogs/stroke-style.h, 
	   src/dialogs/text-edit.cpp, src/dialogs/text-edit.h, 
	   src/dialogs/tool-options.cpp, src/dialogs/tool-options.h,
	   src/dialogs/transformation.cpp, src/dialogs/transformation.h,
	   src/dialogs/xml-tree.cpp, src/dialogs/xml-tree.h,
	   src/dialogs/xml-tree.cpp, src/dialogs/xml-tree.h: Converted 
	   the aforementioned to coding style.


2004-02-04  Ted Gould <ted@gould.cx>

	* src/desktop-snap.cpp: Removing some unused code that had
	been replaced.

2004-02-04  jon phillips <kidproto@user.sf.net>

	* COPYING, COPYING.LIB, ChangeLog, Makefile.am, Makefile.mingw, 
	  Makefile.mingw.common, NEWS, README, autogen.sh, configure.in, 
	  inkscape-cvs-0.ebuild, inkscape.1.in, inkscape.spec.in: 
	  all files converted from tabs to 4 spaces and cleaned up the 
	  coding style, tested, they build, and have committed.
	  
	* extension/*: I converted all files to coding style.

	* src/dialogs/align.cpp, src/dialogs/align.h, 
	  src/dialogs/desktop-properties.cpp, src/dialogs/desktop-properties.h, 
	  src/dialogs/dialog-events.cpp, src/dialogs/dialog-events.h: Converted 
	  the following files to use our coding convention.

	* src/dialogs/desktop-properties.cpp, src/dialogs/desktop-properties.h, 
	  src/dialogs/display-settings.cpp, src/dialogs/display-settings.h, 
	  src/dialogs/export.cpp, src/dialogs/export.h, 
	  src/dialogs/fill-style.cpp, src/dialogs/fill-style.h: converted the 
	  aforementioned files to new coding conventions.

2004-02-04  bulia byak <bulia@users.sourceforge.net>

	* src/style.h src/style.cpp src/sp-text.cpp: Read-only (so far) support for
	letter-spacing CSS property

	* src/event-context.cpp src/select-context.cpp src/draw-context.cpp
	src/dyna-draw-context.cpp src/knotholder.cpp src/nodepath.cpp src/object-edit.cpp:
	Trimming #if 0

	* src/text-context.cpp: Trimming #if 0, removing unneeded document_done

	* src/spiral-context.cpp src/star-context.cpp: Trimming #if 0, enabling ctrl-drag

	* src/dialogs/dialog-events.cpp src/preferences-skeleton.h: Added
	options.transientpolicy, 1 as default

	* src/preferences-skeleton.h: Increased options.keyscroll

	* src/dialogs/xml-tree.cpp: Fix for 852619, fix for failed asserts when selecting root

	* src/widgets/gradient-selector.cpp: Fix for 854514, 856682 

2004-02-02  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/desktop-snap.h, src/desktop-snap.cpp: Indicate that the snap_list
	functions don't modify the passed snap points.  For the wrapper versions,
	don't bother "copying back the new [actually unchanged] versions".

2004-01-31  bulia byak <bulia@users.sourceforge.net>

	* src/zoom-context.cpp src/rect-context.cpp src/arc-context.cpp src/star-context.cpp
	src/spiral-context.cpp src/draw-context.cpp src/dyna-draw-context.cpp
	src/text-context.cpp src/dropper-context.cpp: Fix to swallow up/down keys in
	contexts so as to prevent zoom field from activation, but allow ctrl with up/down
	keys to scroll canvas.

	* src/interface.cpp: Removed New Preview, Remove Transform commands. Added Tutorial
	command to Help.

	* src/preferences-skeleton.h: Reduced default stroke width to 1 pt.

	* src/help.cpp src/help.h: Tutorial command.

	* icons/tutorial.svg: First try at the tutorial. 

	* icons/Makefile.am: Adding tutorial.

	* src/nodepath.cpp: No-nodepath crash fixes.

	* doc/architecture.svg: Added namedview.

	* doc/default.svg: Removed, now reworked into icons/tutorial.svg.

	* src/event-context.cpp: Swapped scrollwheel modifiers.

	* src/xml/repr.cpp src/xml/repr-io.cpp: Small comment fix.

2004-01-31  Johan Ceuppens  <jceuppen@easynet.be>
	* src/verbs.cpp src/verbs.h: removed sp_fullscreen and put it in
	desktop.cpp and desktop.h as fullscreen
	* configure.in src/interface.cpp src/shortcuts.cpp src/inkscape.cpp 
	src/inkscape.h src/desktop.cpp src/desktop.h: 
	Added HAVE_GTK_WINDOW_FULLSCREEN as conditional compilation based
	on a function check for gtk_window_fullscreen in configure script

2004-01-30  Johan Ceuppens  <jceuppen@easynet.be>
	* src/verbs.cpp src/verbs.h: Added fullscreen verb. Fullscreen action
	is in SP_VERB_IS_ZOOM.
	* src/interface.cpp: Added fullscreen menuitem.
	* src/shortcuts.cpp: Linked in fullscreen shortcut (untested)
	* src/inkscape.cpp src/inkscape.h
	* src/desktop.cpp src/desktop.h: Added is_fullscreen gboolean to
	SPDesktop.

2004-01-30  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/libnr/nr-path.h, src/libnr/nr-path.cpp: Mark some functions
	as not modifying the matrix passed to them.

	* src/display/nr-arena-group.h, src/display/nr-arena-group.cpp
	(nr_arena_group_set_child_transform):
	Indicate that matrix isn't written to.

	* src/sp-item-transform.cpp (sp_item_rotate_rel, sp_item_scale_rel,
	sp_item_skew_rel),
	src/sp-marker.cpp (sp_marker_update, sp_marker_show_instance),
	src/sp-shape.cpp (sp_shape_bbox),
	src/sp-symbol.cpp (sp_symbol_update, sp_symbol_show, sp_symbol_print),
	src/display/nr-arena-shape.cpp (nr_arena_shape_update, nr_arena_shape_pick):
	Remove uses of nr_matrix_f_from_d.
	* src/libnr/nr-matrix.h, src/libnr/nr-matrix.cpp (nr_matrix_f_from_d),
	src/libnr/libnr.def:
	Remove now-unused nr_matrix_f_from_d.

	* src/nodepath.cpp (sp_nodepath_new),
	src/path-chemistry.cpp (sp_selected_path_combine, sp_selected_path_break_apart),
	src/selection-chemistry.cpp (sp_selection_apply_affine),
	src/selection.cpp (sp_selection_bbox_document),
	src/sp-item.cpp (sp_item_bbox_desktop, sp_item_private_snappoints),
	src/sp-pattern.cpp (sp_pattern_painter_new),
	src/modules/gnome.cpp (sp_module_print_gnome_fill),
	src/widgets/icon.cpp (sp_icon_image_load_svg):
	Remove uses of nr_matrix_d_from_f.
	* src/libnr/nr-matrix.h, src/libnr/nr-matrix.cpp (nr_matrix_d_from_f),
	src/libnr/libnr.def:
	Remove now-unused nr_matrix_d_from_f.

	* src/sp-item.h, src/sp-item.cpp (sp_item_set_i2d_affine_d,
	sp_item_i2doc_affine_d, sp_item_i2d_affine_d, sp_item_dt2i_affine_d):
	Merge _d version with non-_d version.  Update callers.

	* src/rubberband.h, src/rubberband.cpp (sp_rubberband_start):
	Add NR::Point version.
	Implement x,y version as call to NR::Point version.

2004-01-29  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/desktop-snap.h, src/desktop-snap.cpp (sp_desktop_dim_snap_list):
	Export this function.
	(sp_desktop_horizontal_snap_list, sp_desktop_vertical_snap_list):
	Remove these now-unused functions.
	* src/select-context.cpp (sp_selection_moveto):
	Use sp_desktop_dim_snap_list instead of
	sp_desktop_horizontal_snap_list, sp_desktop_vertical_snap_list.

	* src/select-context.cpp (sp_selection_moveto): Fix what appears to be
	a memory leak.

	* src/rubberband.h, src/rubberband.cpp (sp_rubberband_move):
	Add NR::Point version.

	* src/seltrans.h (sp_sel_trans_point_desktop): Add NR::Point version.

	* src/seltrans.h, src/seltrans.cpp (sp_sel_trans_point_desktop,
	sp_sel_trans_origin_desktop): Indicate that pointer isn't written through.

	* src/node-context.cpp, src/select-context.cpp:
	Make some globals static.

	* src/style.cpp (sp_style_read_pfloat, SPS_READ_IFLOAT_IF_UNSET, 
	SPS_READ_PFLOAT_IF_UNSET): Remove these unused functions/macros.

2004-01-28  MenTaLguY  <mental@rydia.net>

	* src/toolbox.cpp: aux toolbar now expands properly when torn off
	(fix for bug #874923)

	* src/libnr/nr-svp.cpp, src/libnr/nr-stroke.cpp,
	src/libnr/nr-svp-private.h, src/libnr/nr-svp.h,
	src/libnr/nr-svp-render.cpp, src/libnr/nr-svp-uncross.cpp:

	NRCoord -> NR::Coord

	* src/interface.cpp: removed Filters menu

	* src/modules/win32.cpp: the Win32 GDI uses BRGx, rather than
	RGBA, so we reverse the B and R bytes before blitting (fix
	for bug #887428)

2004-01-28  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/seltrans.cpp: Various cleanups, including addressing some
	warnings, and doing some more NR::Point'ification.

	* src/knot.h, src/knot.cpp (sp_knot_set_position): Change from
	pass-by-value to pass-by-const-reference.

	* src/geom.cpp (sp_intersector_line_intersection): Restore
	definition of previous local `cross' function, but "inline" the
	dot(rot90(a), b) definition.  This makes the definition conform to
	the documentation.
	* src/desktop-snap.cpp (sp_intersector_a_vector_snap): Undo a recent
	change that adapted to the previously-introduced bug in
	sp_intersector_line_intersection.

	* icons/Makefile.am: s/icons_dir/iconsdir/g for automake.
	* src/dialogs/Makefile.am, src/widgets/Makefile.am:
	s/icons_dir/iconsdir/g for consistency with icons/Makefile.am.

2004-01-27  jon phillips <jon@users.sourceforge.net>

	* Makefile.am: changed 'glade' globally to 'icons'

	* Makefile.mingw: changed 'glade' globally to 'icons'

	* config.h.mingw: changed 'INKSCAPE_GLADEDIR' to 'INKSCAPE_ICONS_DIR'

	* configure.in: changed 'glade' globally to 'icons'

	* Makefile.am: changed 'gladedir' to 'icons_dir', and fixed spacing, 
	changed 'glad_DATA' to 'icons_DATA'

	* glade/about_svg.tmpl: changed 'glade' globally to 'icons'

	* po/pl.po: changed 'glade' globally to 'icons'

	* src/config.h.win32: changed 'SODIPODI_GLADEDIR' to 'SODIPODI_ICONS_DIR'
	* src/dialogs/Makefile.am: changed 'gladedir' to 'icons_dir', changed 
	'-DINKSCAPE_GLADEDIR=\""$(gladedir)"\" \' to 
	'-DINKSCAPE_ICONS_DIR=\""$(icons_dir)"\" \'

	* src/dialogs/makefile.msc: changed 'gladedir' to 'icons_dir'

	* src/dialogs/object-properties.cpp: changed 'INKSCAPE_GLADEDIR' to 
	'INKSCAPE_ICONS_DIR'

	* src/dialogs/stroke-style.cpp: changed 'INKSCAPE_GLADEDIR' to 
	'INKSCAPE_ICONS_DIR'

	* src/widgets/Makefile.am: changed 'gladedir' to 'icons_dir'

	* src/widgets/icon.cpp: changed 'glade' globally to 'icons'

	* src/widgets/makefile.msc: changed 'gladedir' to 'icons_dir'


2004-01-26  bulia byak <bulia@users.sourceforge.net>

	* src/inkscape.cpp: failed assertion fix 

	* src/shortcuts.cpp: Linked/dynamic offset shortcuts, zoom to page width 

	* src/preferences-skeleton.h: Add inkscape:pageopacity, borderopacity

	* src/attributes.cpp,h src/sp-namedview.cpp,h: Add inkscape:pageopacity

	* src/dialogs/desktop-properties.cpp: Get/set inkscape:pageopacity in the page
	background color picker; reword and rearrange labels, spacing fix

	* src/dialogs/export.cpp: Use inkscape:pageopacity for export background; fix crash on
	exit

	* src/file.cpp: Remove debug output when exporting

	* src/sp-gradient.cpp src/svg/svg-path.cpp src/libnr/nr-compose.cpp src/dir-util.cpp
	src/desktop.cpp: Fixes from sodipodi

	* src/main.cpp: Fix PNG size limits when exporting from commandline 

	* src/style.cpp src/style.h: currentColor support from sodipodi

	* src/sp-gradient.cpp: Fix for 876614 from sodipodi

	* src/dialogs/desktop-properties.cpp: Convert meters to cm on writing (to make
	svg/@height and svg/@width SVG compliant)

	* src/sp-rect.cpp: Fix in description

	* src/dialogs/text-edit.cpp: Fix bug: undo broken when font applied to more than one
	text object. And another bug: do not apply text, only style, when more than one text
	object selected.

	* src/widgets/font-selector.cpp: Make font and style lists scroll automatically to
	show selected row

2004-01-26  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* config.h.win32: Remove this outdated and apparently-unused file.

	* src/livarot/Path-test.cpp: new file.
	* src/livarot/Makefile.am: New test program Path-test.
	Remove $(cflags) from INCLUDES.

	* configure.in: Adjust some things for our C to C++ transition.
	Add warning flags to CXXFLAGS if the compiler is g++.

2004-01-26 MenTaLguY <mental@rydia.net>

	* src/configure.in, src/Makefile.am, src/modules/Makefile.am,
	src/libnrtype/Makefile.am:
	merged patch #847856 for autotools builds on mingw/win32

	* src/sp-marker.h: added a URIReference subclass for markers

	* src/sp-path.cpp: fixed backwards-compatiblilty thing with
	(ancient) Sodipodi

	* src/xml/repr-action.c, src/xml/repr-action.h,
	src/xml/repr-private.h, src/xml/repr.cpp:

	made SPReprDoc::is_logging a C++ bool, and fixed sp_repr_rollback()
	to respect the no-logging-during-rollback invariant

2004-01-25 MenTaLguY <mental@rydia.net>

	* src/sp-object-repr.cpp, src/splivarot.cpp, src/sp-offset.cpp:
	changed "offset" to "inkscape:offset" for sodipodi:type

2004-01-24  bryce <brycehar@bryceharrington.com>

	* src/dialogs/stroke-style.cpp:  Hooking up marker buttons to
	underlying marker style setting code, & etc.  

2004-01-24  bulia byak <bulia@users.sourceforge.net>

	* src/document.cpp src/sp-namedview.cpp: Desensitize undo for changing document uri
	and for saving window geometry/viewarea into namedview

	* src/xml/repr-util.cpp: Increase precision in set_double_attr

	* src/arc-context.cpp: Call invoke_write when finishing arc, instead of setting attrs
	manually

	* src/sp-ellipse.cpp: Add write method to genericellipse; fix handling of start and
	end attrs; fix undo bug (877238)

2004-01-24  MenTaLguY <mental@rydia.net>

	* src/xml/repr-action.h, src/xml/repr-action.c: made the
	SPReprAction::act union anonymous, and reworked the transaction
	log optimization code.  sp_repr_coalesce_log() should be a bit
	faster now, and no more strcmp()s.

2004-01-23  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/livarot/Path.h, src/livarot/Path.cpp (Path::Affiche): remove
	unused function.
	Doing so allows removal of path_descr_moveto::pathLength field and the
	code for calculating its value.

	* src/livarot/Path.cpp (SizeForData): Change from private method to
	static function.
	Use new function roundup_div instead of `%' calculation.

	(Path::CloseSubpath): Remove loop that calculated pathLength.
	Consequently remove the no-longer-used argument.  Update callers.

	(Path::MoveTo, Path::LineTo, Path::CubicTo, Path::ArcTo,
	Path::TempBezierTo, Path::EndBezierTo, Path::IntermBezierTo,
	Path::BezierTo, Path::AddPoint, Path::PointAt,
	Path::PointAndTangentAt):
	Change some C-style casts to reinterpret_cast's.

	(Path::PointAt, Path::PointAndTangentAt): code transformations
	in preparation for merging some branches.

	* src/libnr/nr-types-test.cpp (main): Update for NR::Point .pt
	privateness change.

	* src/libnr/nr-svp-uncross.cpp (nr_segment_intersection): Mark some
	pointer arguments as not being written through.
	Add doc comment.

	* src/selection-chemistry.cpp (sp_matrix_d_set_rotate):
	Slight reduction in numerical error.
	(Also rename variables from `angle' to `angle_degrees' in several
	places.)

	* src/node-context.cpp (sp_node_context_root_handler):
	* src/object-edit.cpp (sp_arc_start_set, sp_arc_end_set,
	sp_spiral_inner_set, sp_spiral_outer_set):
	* src/select-context.cpp (sp_select_context_root_handler):
	* src/seltrans.cpp (sp_sel_trans_rotate_request):
	Fix for options.rotationsnapsperpi == 0.

	* src/event-context.cpp (sp_event_context_private_root_handler):
	Address warning.

2004-01-22  bulia byak <bulia@users.sourceforge.net>

	* src/attributes.h src/attributes.cpp: Added pagecolor, bordercolor, borderopacity (from sodipodi), pageshadow.

	* src/sp-namedview.h src/sp-namedview.cpp: Added reading page attributes.

	* src/desktop.cpp: Added setting page and border color (from sodipodi), pageshadow taken from namedview.

	* src/preferences-skeleton.h: Moved pageshadow into namedview, added page and border colors to the template.

	* src/dialogs/desktop-properties.cpp: Added page and border color selectors (from
	sodipodi), moved former document settings here.

	* src/verbs.cpp src/verbs.h: Removed document settings, renamed editing window into document options.

	* src/interface.cpp: Removed document settings command.

	* src/dialogs/document-properties.cpp,h src/dialogs/tool-attributes.cpp,h: Removed.

	* src/dialogs/object-properties.cpp: Removed size and position dialog.

	* src/dialogs/Makefile.am: Removed unused dialogs.

	* src/verbs.cpp src/verbs.h: Removed unused dialog verbs.

	* src/dyna-draw-context.cpp: Removed debug output.

	* src/node-context.h: New members for tracking left, right/alt, ctrl.

	* src/nodepath.cpp: Reorganize [] <> code, add update_repr (oops). Fix near-zero handles behavior with <>.

	* src/sp-item-transform.cpp: More correct transformation writing method: use each
	item's transform writer instead of simply adding transform= attribute.

	* src/document.cpp src/document.h src/document-undo.cpp: Added
	sp_document_ensure_up_to_date on each undoable action, fixes bbox problems (bug
	879249). Added callback to reset actionkey on each selection change, so that
	same-key actions on different objects are not lumped together.

	* src/selection-chemistry.cpp: Removed spurious sp_selection_changed calls from all
	transformation functions, coalesced [] <> rotates and scales.

	* src/select-toolbar.cpp: Coalesced spinbutton moves and scales. 

2004-01-21 MenTaLguY <mental@rydia.net>

	* src/desktop-snap.cpp, src/desktop.cpp, src/nodepath.cpp,
	src/object-edit.cpp, src/sp-namedview.cpp, src/sp-offset.cpp,
	src/splivarot.cpp, src/uri.h, src/dialogs/desktop-properties.cpp,
	src/libnr/nr-matrix.cpp, src/libnr/nr-matrix.h,
	src/libnr/nr-point-fns.cpp, src/libnr/nr-point-fns.h,
	src/libnr/nr-rect.cpp, src/libnr/nr-types.cpp, src/libnr/nr-types.h,
	src/livarot/Path.cpp, src/livarot/PathConversion.cpp,
	src/livarot/PathOutline.cpp, src/livarot/PathSimplify.cpp,
	src/livarot/PathStroke.cpp, src/livarot/Shape.cpp,
	src/livarot/ShapeMisc.cpp, src/livarot/ShapeSweep.cpp,
	src/livarot/ShapeSweepUtils.cpp:
	Cleanup; made data member of NR::Point private and replaced
	a few 'magic' [0] and [1] indices with the more meaningful NR::X
	and NR::Y.

2004-01-20 Jon Phillips <jon@protofunk.org>

	* src/help.cpp: I cleaned up the code a little according to our coding 
	standards and have/am adding comments to the help system.

2004-01-20  bulia byak <bulia@users.sourceforge.net>

	* src/selection-chemistry.cpp,h: New scaling utility functions

	* src/select-context.cpp: <> [] with modifiers to scale/rotate objects

	* src/nodepath.cpp,h: New functions for scaling and rotating nodes

	* src/node-context.cpp: <> [] with modifiers to scale/rotate nodes, left/right
	modifiers affect one of the two handles

	* src/node-context.h: New node context members for tracking left/right alt/ctrl

	* src/event-context.cpp: Use cursor coords when zooming by scrollwheel (fixme)

2004-01-19 MenTaLguY <mental@rydia.net>

	* src/dialogs/xml-tree.cpp: automatically scroll tree view to show selected item

2004-01-19 Jon Phillips <jon@protofunk.org>

	* src/desktop.cpp: Changed the document shadow to be an option. It is 
	option.pageshadow. I also made some wrapper code so that if the value
	is set to 0, then the constructor for page shadow is not 
	initialized.

2004-01-18  bulia byak <bulia@users.sourceforge.net>

	* src/sp-spiral.cpp,h: Moved defines to .h

	* src/object-edit.cpp: Reenabled restricted ctrl-rotation of spiral and arc. Added
	alt-drag in spiral to lock radius. Used PI/options.rotationsnapsperpi everywhere
	instead of PI/4.

	* src/selection-chemistry.cpp,h src/select-context.cpp: Enable [ ] keys to rotate
	selected objects by rotationsnapsperpi. Alt [ ] rotate by angular pixels.

	* src/event-context.cpp src/preferences-skeleton.h src/desktop.h src/zoom-context.cpp
	src/select-context.cpp: Behavior fixes, simplifications, & unifications in handling
	dragtolerance, rubberband, and shift/ctrl+selection

	* src/event-context.cpp src/preferences-skeleton.h src/desktop.h: Define & use new
	options for scrolling distances: keyscroll, wheelscroll

2004-01-18 MenTaLguY <mental@rydia.net>

	* src/uri.h, src/uri.cpp, src/uri-reference.h, src/uri-reference.cpp,
	src/sp-item.h, src/sp-item.cpp, src/sp-clippath.h,
	src/sp-gradient.h, src/sp-gradient.cpp, src/sp-mask.h,
	src/sp-item.h, src/sp-item.cpp:

	Reworked URIs to use libxml, and URIReferences to be specialized
	for particular object types.  Also switched gradients to using
	URIReferences.

2004-01-17 Jon <jon@protofunk.org>

	* src/desktop.cpp: Changed the document shadow to 1 pixel. It as
	set to 5, which is really cheesy. I changed it in the 
	constructor for SP_desktop_new in the function 
	sp_ctrlrect_set_shadow().

2004-01-17 Bryce <bryce@bryceharrington.com>

	* src/sp-root.cpp, src/sp-symbol.cpp:  Fixing NRMatrix's a -> &a
	so codebase will build.

	* Adding marker xpm's to Makefile.in so the button images display
	in the stroke style dialog (must do a make install)

2004-01-17 MenTaLguY <mental@rydia.net>

	* src/uri.h, src/uri.cpp, src/uri-references.cpp:
	new Inkscape::URI implementation using libxml URI stuff

2004-01-15  bulia byak <bulia@users.sourceforge.net>

	* src/preferences-skeleton.h: Added: tools.freehand.perncil tolerance,
	options.zoomincrement, rotationsnapsperpi, maxrecentdocuments

	* src/seltrans.cpp src/draw-context.cpp src/nodepath.cpp: Rotation snaps taken from
	preferences

	* src/inkscape.cpp: Max recent documents from prefs

	* src/desktop.cpp,h: New _keep_point zoom functions

	* src/event-context.cpp: Zoom in/out on (shift+)middle click, use
	options.dragtolerance, use options.zoomincrement, use _keep_point zoom functions

	* src/verbs.cpp: Use options.zoomincrement

	* src/zoom-context.cpp: Use options.zoomincrement, use _keep_point zoom functions

	* src/tools-switch.cpp: Fix for 865740

	* src/draw-context.cpp: Fix for 877188

	* src/nodepath.cpp: Swapped ctrl-click and ctrl-alt-click

	* src/knot.cpp src/knotholder.cpp src/nodepath.cpp: Knot colors, using XOR paint mode

	* src/widgets/widget-sizes.h src/desktop.cpp: Coord skip taken from define, limited
	height of the bottom bar

	* src/splivarot.h src/splivarot.cpp src/verbs.cpp src/verbs.h src/interface.cpp: Added
	dynamic and linked offsets to menu

	* src/knot.cpp src/select-context.cpp src/zoom-context.cpp src/draw-context.cpp:
	Unified within_tolerance handling; take curve fitting tolerance from preferences in
	freehand tool (default 10)

2004-01-15  MenTaLguY <mental@rydia.net>

	* glade/about.svg, glade/about_svg.tmpl, samples/inkscape.logo.svg:
	updated to match the current standard logos from
	inskcape_project/artwork

2004-01-15  Nathan Hurst <njh@mail.csse.monash.edu.au>

	* src/livarot/* an ungodly number of changes for improved use of
	NR::Point.  Const propagation.  Minor bugfixes.

2004-01-15  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/widgets/paint-selector.cpp (sp_paint_selector_set_color_alpha,
	sp_paint_selector_get_color_alpha, sp_paint_selector_system_color_set),
	src/widgets/sp-color-gtkselector.cpp (ColorGtkselector::_colorChanged),
	src/widgets/sp-color-notebook.cpp (ColorNotebook::_colorChanged,
	ColorNotebook::_updateRgbaEntry), src/widgets/sp-color-selector.cpp
	(ColorSelector::setAlpha, ColorSelector::setColorAlpha,
	ColorSelector::_updateInternals):
	Add assertions that alpha is in [0.0, 1.0].

	* src/libnr/nr-types.h, src/libnr/nr-rect.cpp (NR::Rect::corner):
	Change argument to unsigned, thus changing remainder operator to modulo
	operator, thus fixing bug for "negative" arguments (-1u etc.).

	* src/dialogs/stroke-style.cpp (sp_stroke_style_paint_update_repr): fix
	bug with unsigned->float alpha conversion.

	* src/nodepath.cpp (angle_normalize): Remove no-longer-used function.

	* src/draw-context.cpp (spdc_endpoint_snap_internal): Fix for
	negative options.rotationsnapsperpi.

2004-01-14  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/selection-chemistry.cpp (sp_selection_item_next,
	sp_selection_item_prev): cleanups, including moving some common
	code into new static function scroll_to_show_item.

	* src/widgets/font-selector.h, src/widgets/font-selector.cpp
	(sp_font_selector_set_font_fuzzy): Remove this unused function.

	* src/sp-text.cpp (sp_text_font_style_to_lookup),
	src/dialogs/text-edit.cpp (sp_text_edit_dialog_font_style_to_lookup):
	Move this duplicated function to src/libnrtype/font-style-to-pos.cpp
	as font_style_to_pos, rewriting & fixing its bugs in the process.
	Adjust callers.
	* src/libnrtype/font-style-to-pos.cpp, src/libnrtype/font-style-to-pos.h:
	New files.
	* src/libnrtype/Makefile.am: Mention the new files.
	* src/libnrtype/nr-type-pos-def.h: Make the default constructor fill in
	sensible values.
	Add constants for CSS weight numbers.

2004-01-13 MenTaLguY  <mental@rydia.net>

	* src/object-ui.cpp: 'Fill Settings' -> 'Fill and Stroke'

	* src/FilePath.cpp, src/FilePath.h: removed until we can rethink
	the file stuff

2004-01-13  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/libnrtype/nr-type-directory.h,
	src/libnrtype/nr-type-directory.cpp (nr_type_directory_lookup_fuzzy):
	Change second arg from char const* to NRTypePosDef.
	(nr_type_calculate_position) Move to nr-type-pos-def.cpp as implicit
	NRTypePosDef constructor from string.
	* src/libnrtype/nr-typeface.h: NRTypePosDef changed from struct to class.
	* src/libnrtype/nr-type-pos-def.h, src/libnrtype/nr-type-pos-def.cpp:
	new files.
	* src/libnrtype/Makefile.am: Mention the new files.

	* src/sp-text.cpp (sp_text_font_style_to_lookup): Fix segfault I
	introduced, reported by ishmal.

2004-01-12  bulia byak <bulia@users.sourceforge.net>

	* src/sp-rect.cpp: Removed coordinates from rect description

	* src/selection-chemistry.cpp: Delete fix from sodipodi, more statusbar diagnostics

	* src/prefs-utils.cpp,h: New functions for setting/getting string values

	* src/dialogs/export.cpp: Export dialog tracks selection and document changes (fix for
	853849). Export area, dpi remembered in prefs. Misc fixes and cleanups

	* src/preferences-skeleton.h: New options for export: exportarea, defaultxdpi

	* src/widgets/spw-utilities.cpp,h: New function for recursively searching widgets for
	key/value pair

	* src/svg/svg-affine.cpp: Ignore whitespace at the end of transform attribute - fix
	for 850943 (from sodipodi)

	* src/select-toolbar.cpp: Correctly handle zero dimensions - fix for 871552

2004-01-12  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/sp-gradient.cpp (sp_gradient_repr_set_vector): "Fix" a memory
	leak.  However, I haven't worked out how to get this code to run, in
	order to check that the guessed replacement code is correct.  Instead
	I've inserted a g_warning and a TODO comment.

	* src/libnrtype/nr-type-directory.cpp
	(nr_type_calculate_position): Fix bug where `ultra bold' and `extra
	bold' were getting parsed as `bold'.
	(nr_type_distance_family_better, nr_type_distance_position_better):
	Rename to nr_type_distance_family and nr_type_distance_position
	respectively, and return just the distance.
	(nr_type_distance_family): Use g_ascii_strcasecmp instead of
	strcasecmp/stricmp.
	(nr_type_distance_family): Return unsigned instead of float.
	(nr_type_distance_position): Use double instead of float.

	* src/libnrtype/nr-rasterfont.cpp
	(nr_rasterfont_generic_glyph_area_get,
	nr_rasterfont_generic_glyph_mask_render): Suppress warning:
	s/CLAMP/MIN/ if the type is unsigned and the lower bound is 0.

	* src/helper/sp-canvas.cpp (paint): Cache canvas->{x0,y0} +
	GTK_WIDGET(canvas)->allocation.{width,height}.
	Remove some commented-out variables.

	* src/tools-switch.cpp, src/tools-switch.h: Make some functions static.
	(tools_num2name): Remove unused function.
	(tools_isactive): Add assertion of not accessing past the end of the
	array.

	* src/knot.cpp (sp_knot_handler): Fix bug where event wasn't
	getting consumed.
	Get rid of hypot macro.

	* src/svg/svg-affine.cpp (sp_svg_transform_write): Add assertions
	that buffer overflow hasn't occurred.

	* src/sp-text.cpp (sp_text_font_style_to_lookup),
	src/dialogs/text-edit.cpp (sp_text_edit_dialog_font_style_to_lookup):
	Slight restructuring using g_snprintf instead of less readable (&
	slightly less efficient in this case) strlen/memcpy.

	* src/sp-metrics.h: Increase accuracy of PT_PER_CM etc.
	Add FIXME comment.

	* src/dialogs/item-properties.cpp, src/display/nr-arena-shape.cpp:
	Address `-Wshadow' warnings.

	* src/nodepath.h, src/nodepath.cpp: Make some functions static.
	(sp_nodepath_node_deselect) Remove unused function.

	* src/dialogs/align.cpp (sp_quick_align_dialog): Switch to data-driven approach.
	Mark some things as static.
	(sp_quick_align_dialog_close) Remove unused function.
	(sp_align_arrange_clicked) Change aligns constant array from ints to
	doubles.  Adjust caller.

2004-01-11  Iain <iain@prettypeople.org>

	* src/modules/ps.cpp: Swap the Print and Cancel buttons around, and
	remove the separator.

2004-01-11  bulia byak <bulia@users.sourceforge.net>

	* src/desktop.cpp,h: New functions and SPDesktop members for maintaining lists of past
	and future zooms. New commands for toggling rulers and scrollbars, removed old and
	unused toggle_borders. Zoom spinbutton editable again, coord_status uses gtk_label
	instead of statusbar, misc cosmetics. Reduced sizes of the window bottom
	stuff. Save/restore the status of rulers and scrollbars in preferences.

	* src/preferences-skeleton.h: New options: showrulers, showscrollbars. Added default
	namedview for a 640x480 new document window.

	* src/widgets/spinbutton-events.cpp,h: Common spinbutton callbacks.

	* src/widgets/Makefile.am: Added spinbutton-events.

	* src/select-toolbar.cpp: Remove code into spinbutton-events.

	* src/widgets/widget-sizes.h: Added sizes for bottom stuff: zoom field, coord status,
	statusbar. Misc cosmetic changes.

	* src/verbs.cpp,h: New verbs for next/prev zoom. New verbs for toggling rulers and
	scrollbars.

	* src/sp-namedview.cpp: Cancel past zooms at the end of window_from_document.

	* src/shortcuts.cpp: `, shift-` to navigate the history of zooms. Ctrl-r, Ctrl-b to
	toggle rulers and scrollbars.

	* src/interface.cpp: Added next/prev zoom commands in the view menu. Added three
	toggle commands (grid, rulers, scrollbars) in the view menu.

	* src/widgets/ruler.cpp: Use fixed smaller font size, defined in widget-sizes. 

2004-01-10  bulia byak <bulia@users.sourceforge.net>

	* src/draw-context.cpp: Changed alt to shift for one-handle drag.

2004-01-10  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/desktop-events.cpp, src/desktop-snap.cpp, src/draw-context.cpp,
	src/gradient-chemistry.cpp, src/selection-chemistry.cpp,
	src/seltrans.cpp, src/sp-shape.cpp:
	Address some `-Wshadow' warnings.

	* src/attributes.cpp, src/color.cpp, src/inkscape.cpp,
	src/interface.cpp, src/helper/units.h, src/libnrtype/nr-type-xft.cpp,
	src/svg/svg-color.cpp, src/widgets/gradient-vector.cpp:
	Address some `-Wwrite-strings' warnings.

	* src/document.h, src/document.cpp,
	src/prefs-utils.h, src/prefs-utils.cpp,
	src/select-toolbar.cpp,
	src/helper/unit-menu.h, src/helper/unit-menu.cpp,
	src/libnr/nr-object.h, src/libnr/nr-object.cpp:
	Mark some pointer function arguments as not being written through.

	* src/path-chemistry.cpp (sp_selected_path_combine): Fix what appears
	to be a memory leak.  Change string concatenation from Omega(n^2) to
	Omega(n).

2004-01-09  bulia byak <bulia@users.sourceforge.net>

	* src/zoom-context.cpp: Added drag tolerance 

	* src/widgets/widget-sizes.h: Spinbutton steps defined here

	* src/widgets/spw-utilities.cpp,h: New function for recursively searching widgets for data

	* src/select-context.cpp: Alt-x activates aux toolbar 

	* src/select-toolbar.cpp: Implement esc, ctrl-z, up/down, pgup/pgdn, tab in the aux
	toolbar, identified default spinbutton for activating by alt-x

	* src/nodepath.cpp: Fix for uninitialized variable, reported by Bob Jamison 

	* src/draw-context.cpp: Fix for 873092; Never snap if hitting anchor

2004-01-08  bulia byak <bulia@users.sourceforge.net>

	* src/select-context.cpp: Fixed ctrl-drag (without breaking ctrl-click) 

	* src/verbs.cpp: Tooltip edits

	* src/desktop.cpp: Changed initial statusbar message (suggested by Daniel Diaz)

	* src/tools-switch.cpp src/nodepath.cpp src/selection.cpp: Edited statusbar messages,
	made them translatable

2004-01-08  Nathan Hurst  <njh@mail.csse.monash.edu.au>

	* src/helper, src/libnr and various: removed senescent code inside
	#if 0s and changed scoping of variables to be close to use.  minor
	performance tweeks.

2004-01-08  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/widgets/sp-color-notebook.cpp (getCurrentSelector): Address
	unsignedness warning (thus fixing a minor buglet).

	* Too many files to list (58 .cpp files, phew!): Address `missing
	initializer for member _GTypeInfo::value_table' warnings.

	* src/toolbox.cpp, src/helper/sp-canvas.cpp: Address miscellaneous
	other `missing initializer' warnings.

	* src/libnr/nr-values.h, src/libnr/nr-values.cpp: Add `Point
	component_vectors[2]' global constant (moved from desktop-snap.cpp).

	* src/sp-namedview.cpp:
	Combine SPNamedview .hguides & .vguides into .guides.
	Combine .gridspacingx, .gridspacingy scalars into .gridspacing Point.
	Consequently reduce copy&paste code both here & in callers.

	* src/sp-guide.h, src/sp-guide.cpp (sp_guide_moveto,
	sp_guide_position_set): Take a scalar (.position value) as argument,
	not a point.
	(sp_guide_position_from_pt): new function.  Adapt callers.
	(sp_guide_description): New function.
	(sp_guide_compare): Remove, not used.
	Change SPGuide.orientation (horizontal/vertical enum) to .normal (a
	Point to be used with dot product), as a step towards allowing
	arbitrary-direction guide lines.

	* src/desktop-events.cpp: Adapt to SPGuide change.
	Remove some #if 0'ed code that would otherwise require updating.

	* src/desktop-snap.h, src/desktop-snap.cpp: Convert some pass-by-value
	Point arguments to const references.  Unexport
	sp_desktop_dim_snap_list_scale.  Adapt to above changes.

	* src/dialogs/desktop-properties.cpp: Adapt to .gridspacing change.

2004-01-07  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/geom.h, src/geom.cpp (sp_intersector_line_intersection):
	change arguments from `Point' to `Point const &'.

	* src/libnr/nr-types.h: Move cross to its sole user, src/geom.cpp.

2004-01-06  bulia byak <bulia@dr.com>

	* src/widgets/spw-utilities.cpp,h: Recursive font setting functions 

	* src/widgets/widget-sizes.h: New: defines sizes and intervals, for toolbars etc.  

	* src/select-toolbar.cpp src/helper/unit-menu.cpp src/toolbox.cpp,h: Use
	widget-sizes.h and recursive font_set

2004-01-06  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/desktop-snap.cpp: Make the `horizontal' and `vertical'
	global constants be static.
	Similarly, make functions sp_intersector_a_vector_snap,
	sp_desktop_dim_snap_list static.

	* configure.in: Fix sigc++ checking code: add it to the existing
	PKG_CHECK_MODULES(INKSCAPE, ...)  list instead of modifying
	$CXXFLAGS,$LIBS.

	* distro: Remove some bashisms: change `function f {...}' to
	`f () {...}', and invoke self with `sh' rather than `bash'.

	Also change a strange-looking "tr '  ' ' '" to "tr -s ' '", as
	a guess as to the intended meaning.  (The actual meaning of the
	original is a noop.)

2004-01-06  bulia byak <bulia@dr.com>

	* src/document-undo.cpp src/document.h: Undo and redo now return gbooleans

	* src/selection-chemistry.{cpp|h}: sp_undo, sp_redo: new, with statusbar
	diagnostics. Duplicate command adds statusbar diagnostics, places duplicate
	into the source's parent instead of document root

	* src/verbs.cpp: Use sp_undo, sp_redo. Tooltip edits

	* src/toolbox.cpp src/toolbox.h: New aux_toolbox_space()

	* src/interface.cpp: New commands in view (cycling desktops) and dialogs (hide dialogs)

	* src/main.cpp: Removed unneeded include

	* src/select-toolbar.cpp src/select-toolbar.h: New selector aux toolbar with XYWH
	spinbuttons (taken mostly from the size&position dialog)

	* src/toolbox.cpp src/toolbox.h: Removed selector aux toolbar code from here

	* src/helper/unit-menu.cpp: Use abbreviations in the unit menu

	* src/widgets/sp-widget.cpp: Added checks that the inkscape object is valid before
	disconnecting SPWidget from it

2004-01-06 MenTaLguY <mental@rydia.net>

	* src/Makefile.am: removed monostd.h

	* src/sp-item.cpp, src/uri-reference.h, src/uri-reference.cpp:
	redid URI reference stuff a bit

2004-01-06 Nathan Hurst <njh@mail.csse.monash.edu.au>

	* src/desktop-snap.{h,cpp} is now built using NR::Point.

2004-01-06 Nathan Hurst <njh@mail.csse.monash.edu.au>

	* src/draw-context.cpp closing a segment now remains snapped.
	Lots of snapping fixes.

2004-01-05 MenTaLguY <mental@rydia.net>

	* src/uri-references.cpp, src/uri-references.h,
	src/uri.cpp, src/uri.h, sp-item.cpp:
	new URI code

2004-01-04 MenTaLguY <mental@rydia.net>

	* src/object-ui.cpp: flattened group submenu

	* src/uri-references.cpp: fixed initialization bug; for
	pre-existing references, the "release" signal wasn't being
	connected

2004-01-04  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/helper/bezier-utils.cpp: Greater use of NR::Point instead of
	NRPoint.  (Readability improved as a result.)
	Get rid of now-unused sp_vector_add etc. functions.
	Get rid of MAXPOINTS fixed upper limit, in the process making more efficient.
	NewtonRaphsonFindRoot: handle the case where f'(u) <= 0. (Previously
	it would seek a local maximum instead of minimum in this case.)
	Rename lots of static functions according to our coding standards.
	Fix some documentation.
	Filter out any NaN points in the input.
	Change the iteration cutoff from the square of the requested error to
	3 * the requested error.  Change the "acceptable error" test from `<'
	to `<='.
	* src/helper/bezier_utils.h (sp_bezier_fit_cubic_full): change
	arguments from NRPoint to NR::Point.
	* src/sp-spiral.cpp: Adapt to sp_bezier_fit_cubic_full change.
	Greater use of NR::Point instead of NRPoint.

	* src/helper/curve.h, src/helper/curve.cpp (sp_curve_moveto,
	sp_curve_lineto, sp_curve_curveto): Add convenience wrappers that
	take n NR::Point's instead of 2*n gdoubles.

	* src/helper/curve.h, src/helper/curve.cpp: Indicate that certain
	functions don't modify the curve passed to them.

	* src/libnr/nr-types.h: operator[], operator+=, operator/=, unary operator-,
	operator==, operator!=: new.  Remove methods L1,L2,Linfty, move them to
	functions in nr-point-fns.{h,cpp}.  Rename Normalize to normalize with
	more sophisticated non-inline implementation in nr-types.cpp.
	* src/libnr/{nr-types.cpp,nr-point-fns.h,nr-point-fns.cpp}: new files.
	* src/libnr/nr-types-test.cpp: new unit test file.
	* src/libnr/Makefile.am: mention the new files.

	* src/Makefile.am: Add `check-recursive: all-recursive' dependency
	(and a comment with related discussion).

	* src/xml/Makefile.am: Append $(EXEEXT) to executables in TESTS.

	* src/verbs.cpp (sp_action_get_title): Get rid of fixed-sized buffer.

	* src/nodepath.cpp: Miscellaneous cleanups including fixing
	erroneous indentation, changing `g_list_length(foo) == 0' to `foo
	== NULL', removing unused function closest_of_three, specifying
	some functions as `static', adding doc.

	* src/inkscape.cpp (inkscape_remove_desktop): Change
	`g_slist_length (foo) == 0' to `foo == NULL'.

	* src/dyna-draw-context.cpp (fit_and_split_calligraphics): Fix the
	calculation of BEZIER_MAX_LENGTH.
	Add assertions that the corresponding buffers haven't been overrun.

2004-01-03  Ted Gould <ted@gould.cx>

	* src/helper/bezier-utils.cpp, src/inkscape-stock.h:
	Fixing some Doxygen errors.

2004-01-03  bulia byak <bulia@dr.com>

	* src/dialogs/dialog-events.{cpp|h}: Hide/unhide callbacks

	* all dialog files: Connected hide/unhide signals

	* src/inkscape.cpp src/inkscape.h: New functions for dialog hide, unhide, toggle

	* src/verbs.cpp src/verbs.h: New verb for dialog toggle

	* src/shortcuts.cpp: F12, quoteleft toggle dialogs

	* src/desktop.cpp: Zoom field width increased

	* src/node-context.cpp: Crash fix by Robert Crosbie

2004-01-03  MenTaLguY <mental@rydia.net>

	* src/inkscape.cpp, src/inkscape.h, src/main.cpp:
	fixes to preference loading

	* src/uri-reference.h: documented Inkscape::URIReference

	* src/sp-item.cpp: fixed double hunref problem

	* src/sp-item.cpp, src/uri-references.h, src/uri-references.cpp:
	reworked Inkscape::URIReference a little

	* src/sp-item.cpp: masks now use Inkscape::URIReference as well

2004-01-02  MenTaLguY <mental@rydia.net>

	* src/shortcuts.cpp: zoom in shortcut fix for german and other
	keyboards from schumaml

	* configure.in: added SigC++ 1.2 dependency

	* src/document-private.h, src/document.h, src/document.cpp,
	src/sp-item.h, src/sp-item.cpp, src/uri-reference.h,
	src/uri-reference.cpp: rewrote URI monitoring code using SigC++

	* src/inkscape.cpp: fix some portability issues

	* src/inkscape.cpp, src/widgets/icon.cpp, src/monostd.h: cleaning up
	more platform stuff

	* src/dir-util.cpp, src/dir-util.h, src/dialogs/export.cpp:
	remove sp_filename_from_path(); use g_path_from_filename instead

2004-01-02  Alexander Clausen <alex@skip86.com>

	* src/spsvgview.cpp src/inkview.cpp src/Makefile.am: re-enabled svg viewer,
	renamed to inkview to avoid name clash with spsvgview from sodipodi

2004-01-01  bulia byak <bulia@dr.com>

	* src/desktop.cpp: Pass keyboard events from desktop widget to event contexts (if
	there is no current item on the canvas); now all keys work regardless of mouse
	position, so long as the document window has focus.

	* src/verbs.cpp src/verbs.h: New verbs for switching desktops

	* src/inkscape.cpp src/inkscape.h: New functions for switching desktops

	* src/nodepath.cpp: Fix crash: Tab when no nodepath

	* src/shortcuts.cpp: Ctrl-Tab, Shift-Ctrl-Tab cycle desktops

	* src/node-context.cpp src/event-context.cpp src/select-context.cpp: Do not consume
	Ctrl-Tab/Shift-Ctrl-Tab in contexts. Explicitly run the corresponding verb in
	event-context.cpp because otherwise GTK gobbles it.

	* src/splivarot.cpp: Edits in statusbar error messages

2004-01-01  MenTaLguY <mental@rydia.net>

	* src/document-private.h, src/document.h, src/document.cpp,
	src/sp-item.h, src/sp-item.cpp, src/uri-reference.h,
	src/uri-reference.cpp:
	added code to handle notifications when uri/id mappings
	changed

	* src/desktop.cpp, src/style.cpp: compilation cleanups

	* src/libnr/nr-types.h: documented NR::Coord and NR::ICoord

2003-12-31  MenTaLguY <mental@rydia.net>

	* removed *S variants of NR structs

	* src/libnr/gen_nr_config.c: removed!

	* src/xml/repr.h, src/xml/repr-private.h, src/xml/repr-io.cpp,
	src/xml/repr.cpp: very preliminary comment support

	* configure.in, src/desktop.cpp, src/main.cpp: removed gtkmm
	dependency for now

2003-12-30  bulia byak <bulia@dr.com>

	* src/selection-chemistry.cpp: Grouping: Statusbar messages for nothing to group or
	only one object, prevent crash when trying to group objects with different parents,
	add new group to the members' common parent rather than to the document
	root. Ungrouping: ungroup all groups in selection, statusbar messages for nothing to
	ungroup.

	* src/node-context.cpp src/node-context.h src/knotholder.h src/knotholder.cpp
	src/nodepath.h src/nodepath.cpp src/document-undo.cpp: Add repr listener in node
	context recreating nodepath or knotholder when the repr was changed outside of the
	node editor, remove the change selection signal hack in document_undo, fixes many
	bugs.

2003-12-28  Daniel Borgmann  <spark@mayl.de>

	* src/main.cpp: Include gtkmm/main.h and gtkmmify the main loop

	* src/desktop.cpp: convert save confirmation dialog to Gtkmm

2003-12-28  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/helper/Makefile.am: Try not to require Gnu make.

2003-12-27  Alexander Clausen <alex@skip86.com>

	* src/interface.{h,cpp} (sp_ui_error_dialog): new function.

	* src/file.cpp src/main.cpp src/dialogs/export.cpp src/interface.cpp: use it

2003-12-27  bulia byak <bulia@dr.com>

	* src/draw-context.cpp: Added drag_tolerance to bezier tool, messages to statusbar 

	* src/knot.cpp: Do not consume Esc when not escaping knot dragging 

	* src/select-context.cpp: Enable dragging objects selected within group

2003-12-27  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/helper/bezier-utils.cpp: Simplifications & documentation.

2003-12-26  bulia byak <bulia@dr.com>

	* src/document.cpp: added rel2abs to sp_document_set_uri, simplified

	* src/document.cpp: removed rel2abs into dir-util

	* src/dir-util.cpp src/dir-util.h: moved rel2abs and abs2rel here

	* src/modules/svg.cpp: Cleaned up svg_save: removed extraneous setting of docbase and
	docname, moved uri_set before save, added comments

	* src/document.h src/document.cpp src/desktop.h src/desktop.cpp: item_at_point: add
	into_groups; group_at_point: new

	* src/selection.cpp: When selecting a group, deselect all its descendants to prevent
	double selection

	* src/select-context.cpp src/select-context.h: Added ctrl-click/ctrl-shift-click to
	select/add to selection regardless of grouping

	* src/verbs.cpp: 2 more mnemo changes 

2003-12-26  Nathan Hurst <njh@mail.csse.monash.edu.au>

	* libnr: moving towards a fully class based Point and Matrix.
	This change adds an initial sketch of matrix.

2003-12-26  MenTaLguY <mental@rydia.net>

	* configure.in: added Gtkmm dependency, removed AC_FUNC_MALLOC

2003-12-25  MenTaLguY <mental@rydia.net>

	* src/desktop.cpp: changed g_sprintf to g_strdup_printf

2003-12-25  Daniel Borgmann <spark@mayl.de>

	* src/interface.cpp src/verbs.cpp: Fixed a few more mnemonics (mostly
	duplicates) and changed shortcut labels to use uppercase letters like the 
	rest of the world. :-)

2003-12-25  Alexander Clausen <alex@skip86.com>

	* src/file.cpp src/main.cpp src/dialogs/export.cpp: Made error dialogs 
	and progressbar transient and non-resizable; made export file selector
	transient.

2003-12-24  bulia byak <bulia@dr.com>

	* src/select-context.cpp: Added statusbar update in a few places

	* src/interface.cpp: Changed order of keyboard modifiers. Split view and object menus.

	* src/verbs.cpp: A couple fixes in mnemonics to better match shortcuts

	* samples/tux.svg: Added missing sodipodi namespace, added namedview

2003-12-24  Alexander Clausen <alex@skip86.com>

	* src/file.cpp src/modules/system.cpp: Fix for 860199; returning NULL in
	sp_module_system_open when doc == NULL; added error dialog.

	* src/main.cpp: Add error dialog when file given on command line does not
	exist, and create an empty document in that case.

2003-12-24  MenTaLguY <mental@rydia.net>

	* src/verbs.cpp: renamed 'XOR' to 'Exclude' on the menu

	* src/object-ui.cpp: moved object-specific menuitems out onto the
	main context menu, instead of sequestered in their own submenus.

2003-12-24  Alexander Clausen <alex@skip86.com>

	* src/interface.cpp:
	Added partial DND (drop part only for now) for image/svg and image/svg+xml,
	and a tweak to make uri-dnd with konqueror work.

2003-12-24  Daniel Borgmann <spark@mayl.de>

	* src/interface.cpp src/verbs.cpp src/object-ui.cpp src/modules/menu.cpp:
	Added mnemonics and some HIGification

	* src/verbs.cpp: New: sp_action_get_title(), get action name without
	underscores (for use in dialog titles or other places without mnemonics)

2003-12-23  bulia byak <bulia@dr.com>

	* src/helper/sp-canvas.h: float-to-double fix

	* src/sp-namedview.h src/sp-namedview.cpp: New namedview attributes for zoom and
	window geometry; functions for updating them from a desktop and for setting up a
	desktop from these attributes

	* src/preferences-skeleton.h: new options.savewindowgeometry 

	* src/attributes.h src/attributes.cpp: New namedview attributes

	* src/desktop.cpp: Remove/comment out extraneous code. Float-to-double fixes, prevent
	sliding when zooming in at max zoom.

	* src/file.cpp src/main.cpp src/interface.cpp: Added document_from_window and
	window_from_document hooks to file opening and saving functions

	* src/document.cpp: New: inkscape_rel2abs() (based on g_rel2abs by Shigio Yamaguchi),
	store absolute filenames in document->uri. Fixed reading namedview template from
	preferences, fixed namedview template id, added comments.

	* src/nodepath.cpp: Ctrl + click node: delete node

	* src/desktop.cpp src/file.cpp src/file.h: New save confirm dialog (patch by spark)

2003-12-23  MenTaLguY <mental@rydia.net>

	* src/desktop.cpp: shortened rulers to canvas dimensions for now

	* src/main.cpp, src/Makefile.am: renamed DATADIR to INKSCAPE_DATADIR
	for the remaining platforms

2003-12-23  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/desktop-snap.h, src/desktop-snap.cpp (all functions):
	Indicate that the given point(s) aren't modified by these functions.

2003-12-22  bulia byak <bulia@dr.com>

	* src/nodepath.cpp: Ctrl + Alt + click node: toggle smooth/cusp/symmetric.

	* src/select-context.cpp: No more snapping back to the origin because of drag
	tolerance (once you trespass the drag tolerance limit once, it does not affect you
	anymore).

	* src/knot.cpp: Used global drag tolerance, no snapping to the origin.

	* src/node-context.cpp: Click outside of nodepath deselects. Added drag tolerance for
	selecting non-selected paths by click. Removed drag_escaped - there's no dragging to
	escape in node context (only in knot).

2003-12-22  bulia byak <bulia@dr.com>

	* src/nodepath.cpp src/nodepath.h>: restrict control handle movement with ctrl, alt,
	shift; utility functions for radial coordinates; fixed several crashes when nodepath
	operations are called but there's no nodepath

	* src/desktop.cpp: filled in sp_desktop_set_coordinate_status implementation, added
	comment

2003-12-22  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/helper/bezier-utils.cpp (sp_darray_center_tangent,
	sp_darray_left_tangent, sp_darray_right_tangent),
	src/helper/bezier-utils.h, src/sp-spiral.h, src/sp-spiral.cpp
	(sp_spiral_get_tangent):
	Make these functions static.

	* src/helper/bezier-utils.cpp (GenerateBezier): Back out accidental
	commit of inserted g_assert(!isnan(bezier coordinate)).  (Having a NaN
	bezier coordinate is usually a problem, perhaps worth warning about,
	but it's hard to make it impossible, so it shouldn't be g_assert.)
	Reported by bulia byak.

2003-12-22 Nathan Hurst <njh@mail.csse.monash.edu.au>

	* Added a new class NR::Point which will replace NRPoint
	throughout the code, and replace things like .cx, .cx in the
	circle structure.

2003-12-21  MenTaLguY <mental@rydia.net>

	* Finally cleaned up the linker issues

2003-12-21  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/Makefile.am (inkscapelib_src):
	src/livarot/Makefile.am (libvarot_a_SOURCES): 
	Add some header files to SOURCES, so that `make distcheck' works.

	* src/style.cpp (sp_style_read_ipaint): Skip leading whitespace.
	Fixes #853804.  Improves rendering of Dia-exported SVG.

2003-12-20  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/sp-spiral.cpp (sp_spiral_set): Fix clamping of t0 value: change
	min from -1.0 to 0.0 as per all other t0 clamps and as required in some
	circumstances by sp_spiral_get_xy.
	(sp_spiral_fit_and_draw): Avoid useless adjacent dups in point sampling.

	(sp_spiral_fit_and_draw, sp_spiral_set_shape): Call proper tangent
	routine instead of trying to estimate from samples.
	(sp_spiral_get_tangent): New function.

	* src/helper/bezier-utils.cpp (sp_bezier_fit_cubic): Implement as a call
	to sp_bezier_fit_cubic_r.
	(sp_bezier_fit_cubic_full): Mark *tHat1 and *tHat2 as const.
	(sp_bezier_fit_cubic_full, ChordLengthParameterize): Add minimal
	handling for the case where the input data is a zero-length path.
	(NewtonRaphsonRootFind): If "improved" value is NaN or +/-inf then
	return the original.

	* src/libnr/nr-macros.h (CLAMP): Change the behaviour if the first
	argument is NaN: previously it would return NaN, now it returns the
	requested lower bound.  Document the behaviour.  Add an assertion that
	the requested lower bound <= the requested upper bound.

	* src/libnrtype/nr-type-ft2.cpp (nr_typeface_ft2_lookup): Change apparently-erroneous
	arguments to CLAMP, and add a FIXME comment indicating that the new arguments are
	just a guess as to the original intent.

2003-12-20  MenTaLguY <mental@rydia.net>

	* src/help.cpp, glade/about_svg.tmpl, glade/about.svg:
	fixed version display in about box

	* src/desktop.cpp, src/desktop.h, src/document.cpp, src/document.h:
	added sp_desktop_item_at_point()

2003-12-19  bulia byak <bulia@dr.com>

	* src/sp-item.cpp src/sp-item.h: new sp_item_get_arenaitem (by mental)

	* src/main.cpp src/file.cpp src/file.h src/dialogs/export.cpp: export UI improvements
	(patches from the tracker)

	* src/select-context.cpp: shift-click selection is now in root_handler, uses
	sp_document_item_at_point(); changed shift-rubberband selection to always select
	instead of toggle

	* src/document.h src/document.cpp: wrong order of arguments in overlap() fixed; new:
	sp_document_item_at_point(), uses sp_item_get_arenaitem

	* src/Makefile.am: fix: ps.c -> ps.cpp

	* src/nodepath.cpp: dragging node with ctrl+alt restricts it to the directions of its
	handles and their perpendiculars

2003-12-19  MenTaLguY <mental@rydia.net>

	* Fixed most shortcut key regressions from the SPAction rework

	* Renamed the Inkscape class (struct really) to Inkscape::Application; we can now
	use the Inkscape namespace.

	* src/toolbox.cpp, src/helper/action.cpp, src/helper/action.h:
	SPActions now know their desktop, and toolbar buttons get it assigned correctly

	* src/desktop.cpp, src/interface.h, src/interface.cpp, src/verbs.cpp:
	Verbs now use the desktop associated with an action rather than SP_ACTIVE_DESKTOP

2003-12-18  Jon A. Cruz <jon@joncruz.org>

	* fix for 859133; Reduced number of generated events.

2003-12-18  Jon A. Cruz <jon@joncruz.org>

	* src/widgets/sp-color-gtkselector.cpp: fix for 859131; Changed descriptive name of GTK+
	selector.

2003-12-18  MenTaLguY <mental@rydia.net>

	* First steps towards making actions per-view

2003-12-17  Jon A. Cruz <jon@joncruz.org>

	* src/widgets/sp-color-notebook.cpp: fix for 859128; changed selectors to grow when
	given more space.

2003-12-17  Jon A. Cruz <jon@joncruz.org>

	* Converted color selectors to C++ classes.

2003-12-18  Nathan Hurst <njh@csse.monash.edu.au>

	* Merged NRPointF and D, similarly Matrix and Rect.

2003-12-18  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/toolbox.cpp: re-added spiral button (reverting MenTaLguY's change).

2003-12-17  bulia byak <bulia@dr.com>

	* src/xml/repr-io.cpp src/xml/repr.h: fix to suppress formatting whitespace when
	serializing text and its children

	* src/select-context.cpp: shift now prevents dragging objects, creating rubberband
	instead

2003-12-17 Nathan Hurst <njh@csse.monash.edu.au>

	* provided some initial thoughts on how to do Points uniformly across inkscape.  geom.h
	* partial currying of zoom menu

2003-12-17  MenTaLguY <mental@rydia.net>

	* src/toolbox.cpp: removed spiral button

2003-12-16  bulia byak <bulia@dr.com>

	* src/nodepath.cpp src/nodepath.h: node drag is now restricted to hor/vert by ctrl

2003-12-16  bulia byak <bulia@dr.com>

	* src/seltrans.cpp: fix for 860201; ctrl restricts rotation by 15 degrees (from
	sodipodi); used new status display function

	* src/sp-text.cpp: removed non-printable char error into text-context, removed
	extraneous assignment

	* src/verbs.cpp: typo fix

	* src/knot.cpp: in cancelling drag, use the knot's desktop instead of active; add
	statusbar flash

	* src/draw-context.cpp: changing useful messages to statusf_flash, removing useless
	debug output

	* src/nodepath.cpp: statusbar error message if joining nodes fails; expanded
	update_statusbar

	* src/select-context.cpp: statusbar flash when esc cancels selection or drag

	* src/selection.cpp: expanded update_statusbar

	* src/text-context.cpp: used statusf_flash for no-break space, added non-printable
	char error

	* src/tools-switch.cpp: added default statusbar message for each tool

	* src/desktop.cpp: new handler for status_set, with timeout; initialize message in
	statusbar

	* src/view.cpp src/view.h: status_set signal: added msec, removed isdefault; added
	_flash and _error functions for temporary statusbar display; added docs

2003-12-14  Ted Gould <ted@gould.cx>

	* src/widgets/button.cpp, src/helper/action.h, src/helper/action.cpp,
	src/verbs.h, src/verbs.cpp, src/toolbox.cpp, src/shortcuts.h,
	src/shortcuts.cpp, src/interface.h, src/interface.cpp:
	Adding in a sp_verb_t to identify verbs to make later conversions
	easier.  Also adding an arguement to the perform function of
	SPActionEventVector so that data can be passed to modules (when
	they're converted to action/verb).

2003-12-14  MenTaLguY <mental@rydia.net>

	* src/view.h, src/view.c: added new utility things for setting status

	* src/draw-context.c, src/text-context.c, src/view.c, src/view.h:
	retired sp_status_display() and sp_status_clear()

2003-12-14  bulia byak <bulia@dr.com>

	* src/verbs.h src/verbs.c: changed 'offset' to 'outset' (more logical), added simplify
	path command

	* src/interface.c: added sp_key_name to make shortcuts more readable, added simplify
	path command, regrouped commands more logically

	* src/shortcuts.c: changed shortcuts for boolean ops, readability, minor cleanups

	* src/inkscape.c: increased max length of recent documents list to 15, fixed trimming
	the list

	* src/seltrans.c: fixed crash when scaling very small objects at max zoom

2003-12-12  MenTaLguY <mental@rydia.net>

	* doc/Makefile.am, Makefile.am, configure.in: include doc/
	subdirectory in distribution tarballs

	* src/widgets/icon.c: final tweaks for getting icon highlights
	right on buttons (temporary hack, hopefully)

	* src/splivarot.cpp: compilation fix

	* src/widgets/sp-color-notebook.c: minor tweak so selector menu
	is a little more obvious

2003-12-12  bulia byak <bulia@dr.com>

	* src/svg/svg-path.c src/desktop.h src/libnr/gen_nr_config.c src/libnr/nr-object.c
	src/libnr/nr-types.h: made all floats doubles and all shorts ints in libnr; maximum
	zoom is increased to 256; SVG paths are stored with 8 digits precision (was 6)

2003-12-11  bulia byak <bulia@dr.com>

	* src/node-context.c adding node edit statusbar updates

	* src/selection.c: update statusbar only if selector is active

	* src/tools-switch.c: update statusbar when selector is activated

	* src/nodepath.c src/nodepath.h: function for node edit statusbar display; fixes for
	several tab-cycling and node-deleting bugs

	* src/sp-path.c: added description for SPPath (used in statusbar display)

	* src/draw-context.c: moved some messages from console to statusbar

	* src/view.c src/view.h: utility functions for statusbar display

	* src/text-context.c: statusbar display for unimode

2003-12-10  Ted Gould <ted@gould.cx>

	* configure.in: Changing to 0.37cvs

2003-12-10  bulia byak <bulia@dr.com>

	* src/verbs.c: SELECT_ALL is now tool-sensitive, comments

	* src/shortcuts.c: ctrl-a for the SELECT_ALL global verb; h and v for flips

	* src/interface.c: split edit menu into edit and object

	* src/node-context.c: removed ctrl-a, now taken care of by the global verb

	* src/nodepath.c: select_all silently returns if given null arg

	* doc/keyboard-shortcuts.txt: new shortcuts from wiki

2003-12-09  bulia byak <bulia@dr.com>

	* src/helper/png-write.c: fix for png comments (from sodipodi)

	* src/nodepath.c: fix for 856700, 856686; a better control point positioning for
	join_segment

	* src/shortcuts.c: fix default shortcut for star tool

	* src/prefs-utils.c src/prefs-utils.h: new *_limited functions to get data guarding
	against through-the-roof values

	* src/select-context.c src/node-context.c: using *_limited functions to get preference
	values

	* src/document-undo.c: fix in sp_document_maybe_done to combine same-key steps

	* src/selection-chemistry.c src/nodepath.c: put subsequent same-direction arrow-key
	movements into one undo step

	* src/sp-text.c src/sp-text.h: removed the preservews argument of sp_text_insert

	* src/text-context.c src/text-context.h: if there's no text object selected, keys are
	not consumed; fixed passing unconsumed keys to parent context; any non-hex-digit now
	cancels unimode

	* src/dialogs/transformation.c: re-fixing pjrm's fix properly

2003-12-08  bulia byak <bulia@dr.com>

	* src/sp-text.c: fixed typing non-ascii chars; copied (with fixes) treatment of
	xml:space from sodipodi 0.33

	* src/sp-text.h: small fix from sodipodi 0.33

	* src/text-context.c: copied sp_text_context_preedit_reset and related code from
	sodipodi 0.33; xml:space='preserve' is added to newly created text objects; esc
	deselects; uncatched keys are passed on; misc fixes

2003-12-08 MenTaLguY <mental@rydia.net>

	* src/widgets/button.c: put errors to rest for now

	* src/document-undo.c: removed code to limit undo list length

2003-12-07 MenTaLguY <mental@rydia.net>

	* src/widgets/button.c: fixed unsignedness warning

2003-12-06  bulia byak <bulia@dr.com>

	* src/dialogs/align.c: tooltip fix (from sodipodi)

	* src/libnr/nr-stroke.c: fix for 853827, rendering of short paths (from sodipodi)

	* src/sp-text.c src/sp-text.h src/text-context.c: enabled home/end in text (from sodipodi)

	* src/document-undo.c: increased MAX_UNDO to 512

	* src/file.c src/dialogs/export.c: fix for 851012: the smallest possible exported png
	is now 1x1

	* src/widgets/font-selector.c: fix for 851789: no exponential display in font size field

2003-12-06 MenTaLguY <mental@rydia.net>

	* src/desktop.c: permit the canvas widget to take keyboard focus

	* src/widgets/button.c, src/widgets/button.h: reworked perform
	callback as separate callback, so we can use
	g_signal_handlers_{un,}block...() on it rather than the stupid
	semaphore counter thing I had originally.

	Also switched to sp_icon_new() instead of sp_icon_new_scaled(), as
	otherwise the small icons were too small (but the large icons are
	now smaller than they could be... darn it... ><)

2003-12-05 Bryce W. Harrington <brycehar@bryceharrington.com>

	* style.*, sp-path.*, sp-shape.*, more:  Hooking up preliminary
	support for path markers (arrowheads).  Also adding
	documentation, fixing if statement style, etc.

2003-12-05 MenTaLguY <mental@rydia.net>

	* src/widgets/icon.c, src/widgets/button.c, src/widgets/button.h, src/toolbox.c:
	Reworked SPButton to derive from GtkToggleButton.

	* src/svg/svg-length.c, src/helper/units.c: removed #ifdef WIN32 insanity

	* src/Makefile.am, src/extension.c,
	src/extension.h, src/extensions-skeleton.h,
	src/main.c, src/inkscape.c, src/toolbox.c: Removed dead code left
	over from first extensions implementation

	* configure.in, src/main.c: removed freebsd-specific test and just check for fpsetmask() instead

	* src/verbs.c: fixed quit icon

2003-12-04  bulia byak <bulia@dr.com>

	* src/toolbox.c: added convert to curves button, cosmetic changes in aux toolbar

	* src/text-context.c: made text editing via xml editor undoable

	* src/nodepath.c: new functions to duplicate node, fixes to node_break and selection
	functions, new (presently unused) functions for saving/restoring node selection

	* src/node-context.c: shift-d to duplicate node, all keys now work regardless of capslock

	* src/document-undo.c: temp fix: undo emits selection_changed signal for node editor
	to update display

	* src/selection.c: new function without arguments to emit change_selection signal

	* src/selection.h: new function without arguments to emit change_selection signal

	* src/nodepath.h: new functions to duplicate node, new (presently unused) functions
	for saving/restoring node selection

2003-12-04  MenTaLguY <mental@rydia.net>

	* src/desktop.c: rearranged toolbars so aux toolbar is topmost
	* src/toolbox.c: made toolbars detachable

2003-12-02  bulia byak <bulia@dr.com>

	* src/file.c: made open and save dialogs modal and transient

2003-12-02  bulia byak <bulia@dr.com>

	* src/interface.c: removed tool attributes command
	* src/preferences-skeleton.h: added branch for export dialog
	* src/file.c: made import dialog transient
	* src/verbs.c: changed some dialog names and tooltips
	* src/shortcuts.c: changed shortcuts for transform and text dialogs
	* src/dialogs/display-settings.c: fixed dialog title
	* src/dialogs/export.c: made unsinkable, remembering size and position, added label
	for filename

2003-11-30 MenTaLguY <mental@rydia.net>

	* src/xml/repr-io.c, src/attributes.c, src/attributes.h,
	src/sp-object.h, src/sp-object.c: merged basis for Oka's
	xml:space support

	* src/toolbox.c: made tool buttons larger, aux buttons smaller

	* src/document-undo.c: fixed bug with undo/redo past the
	beginning/end of the undo history

2003-11-29  bulia byak <bulia@dr.com>

	* src/selection-ch emistry.c src/selection-chemistry.h src/verbs.c src/verbs.h
	src/shortcuts.c src/interface.c: new function, verb, shortcut (shift-ctrl-v), menu
	command: paste style (apply the style of copied object to selection). If more than
	one object is copied, the first one in the clipboard list is taken as the source of
	the style.

2003-11-30  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/style.c (sp_style_merge_from_parent): Fix some
	unsigned-related bugs with "font-weight=lighter",
	"font-stretch=narrower", "opacity=...".

	* src/modules/system.c (sp_module_system_save): Partial fix for
	unrecognized filetype: show a CRITICAL warning instead of
	segfaulting due to uninitialized var.

	* src/document.c (sp_document_new), file.c (file_open_ok,
	sp_file_open_dialog, sp_file_save_dialog, sp_file_do_import),
	main.c (sp_main_console), src/module.c (sp_module_finalize,
	sp_module_input_finalize, sp_module_input_build,
	sp_module_output_finalize, sp_module_output_build),
	src/sp-anchor.c (sp_anchor_set), src/sp-image.c (sp_image_set),
	src/sp-text.c (sp_string_release, sp_string_read_content,
	sp_string_set_shape), src/sp-use.c (sp_use_release), src/style.c
	(sp_style_unref, sp_style_merge_property,
	sp_style_merge_from_parent, sp_text_style_unref,
	sp_style_read_istring), src/bonobo/embeddable-document.c
	(sp_bonobo_stream_read, sp_embeddable_document_ps_save),
	src/dialogs/stroke-style.c (sp_stroke_style_scale_line),
	src/dialogs/text-edit.c (sp_text_edit_dialog_text_changed),
	src/helper/sodipodi-ctrl.c (sp_ctrl_build_cache),
	src/modules/ps.c (sp_ps_print_image),
	src/widgets/font-selector.c (sp_font_preview_set_phrase),
	src/widgets/gradient-image.c (sp_gradient_image_size_allocate),
	src/xml/repr-action.c (coalesce_chgattr, coalesce_chgcontent,
	free_action), src/xml/repr.c (repr_finalize, sp_repr_merge):
	Minor cleanup: replace `if (POINTER_EXPR) g_free (POINTER_EXPR)'
	with the simpler (more readable) `g_free (POINTER_EXPR)'.

2003-11-29 Kees Cook <inkscape@outflux.net>

	* src/utest/.cvsignore: adding "Makefile"
	* src/desktop.c: sp_desktop_pop_event_context could use uninit'd *ec
	* src/desktop.h: missing declaration of sp_desktop_zoom_page_width
	* src/libnrtype/nr-rasterfont.c: give *spx and srs default values
	* dialogs/dialog-events.c: remove unused *w and *dtw

2003-11-29 MenTaLguY <mental@rydia.net>

	* src/interface.c: switched to GNOME HIG menu style

	* src/toolbox.c: gave the aux toolbox a fixed (minimum) size so
	the workspace will jiggle less as different tools are selected.

	* src/utest/Makefile.am, src/utest/utest.c, src/utest/utest.h,
	src/xml/Makefile.am: turned the utest stuff into a giant .h
	file again, which hopefully won't confuse things like the .inc
	extension did.

2003-11-29  bulia byak <bulia@dr.com>

	* shortening tooltips, new verb and menu command for zoom to page width 

2003-11-29 Bryce Harrington <brycehar@bryceharrington.com>

	* README:  Updating "Sodipodi" to "Inkscape", removing some
	obviously obsolete bits.

	* inkscape.1.in, inkscape.pod:  Totally rewriting manpage from
	scratch.  The old one appeared to be for some other application,
	because it was just a list of options, 90% of which aren't
	implemented.  I chose to do it in POD for convenience, but hand
	edited the 1.in file to remove bits about "Perl Documentation",
	etc.

	* General:  Some fixes to recently added code that broke the g++
	compile.

2003-11-29  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* src/utest/Makefile.am, src/utest/utest.c, src/utest/utest.inc,
	src/utest/utest.h, src/xml/Makefile.am, src/xml/repr-action-test.c:
	Split utest.inc into utest.h and utest.c.  Update users.

	Make utest.c,utest.h formatting conform more to doc/coding-style.txt.

	Have utest.c built into libutest.a (see src/utest/Makefile.am
	comments).

	* src/xml/repr-action.c (reverse_log): Add doc comment.  Rename some vars.

	* src/xml/repr-action.c (sp_repr_replay_log, sp_repr_undo_log),
	src/xml/repr-action.h, src/document-undo.c (sp_document_cancel,
	sp_document_redo, sp_document_undo): Remove the unused doc
	argument to sp_repr_replay_log, sp_repr_undo_log.  Update callers.

2003-11-28  Peter Moulder  <pmoulder@mail.csse.monash.edu.au>

	* extensions/ai_input.inkmod, extensions/dia.inkmod,
	extensions/svgz_input.inkmod, extensions/svgz_output.inkmod:
	Change the filename extension from `foo' to `.foo'; i.e. the
	filename must end in `.foo' to be considered a match, rather
	than merely ending in `foo'.

	It appears that the sole users of this data are in src/system.c
	(open_internal, save_internal).

	I've found no documentation needing updating, according to
	`rgrep -i extension doc'.

	* src/system.c (open_internal, save_internal): Minor effec tweaks:
	fewer strlen calculations.

	* src/dialogs/transformation.c: Fix uninitialized-var bug.

2003-11-28 MenTaLguY <mental@rydia.net>

	* src/document.c, src/document-undo.c, src/document-private.h:
	renamed SPDocumentPrivate::undo_size to ::history_size.  Fixed
	long-standing undo bug, where maybe_done() would neglect to
	start a new transaction if the previous transaction log were
	empty.

	* src/xml/repr-action-test.c, src/utest/utest.inc: made test
	control structure a little clearer (hopefully) by hiding it.
	Also some initial Doxygenification of the unit testing stuff.

	* src/Makefile.am: added utest/ subdir

	* doc/architecture.svg: reworked architecture diagram a bit

	* doc/class-hierarchy.dia: added first shot at documenting the
	class hierarchy in Dia

	* src/modules/svg.c, src/modules/win32.c: change "...with
	xmlns:sodipodi namespace" to "...with extension namespaces"

	* src/xml/repr-action.c: fixed log optimizer to check
	SPReprAction::type before coalescing adjacent actions

2003-11-27 Bryce <bryce@osdl.org>
	* doc/architecture.svg: Added architecture.svg to try to capture
	the subsystems at a block layer level.  Defining colors, working
	up basic structure, etc.
	* Adding defines, functions, etc. for allowing markers into
	inkscape-stock.h, sp-marker.*, sp-path.c, sp-shape.h, style.*,
	and dialogs/stroke-style.c
	* Added some new UI utility functions to spw-utilities.* and
	changed dialog/stroke-style.c to use them, in order to simplify
	redundancies in the code a bit.

2003-11-27 MenTaLguY <mental@rydia.net>

	* src/desktop.c: the coord status bar area should not have a
	resize handle

2003-11-27 bulia byak <bulia@dr.com>

	* all dialogs remember size and position across sessions
	* all dialogs are unsinkable (re-transientizing to the current document)
	* all dialogs are closeable by ctrl-f4 and ctrl-w, defocusable by esc
	* dialogs titles unified, added shortcut display in the titles

2003-11-27 MenTaLguY <mental@rydia.net>

	* src/utest/Makefile.am, src/utest/utest.inc: new minimalist
	unit testing framework

	* src/xml/Makefile.am, src/xml/repr-action-test.c: some tests
	for the XML transaction stuff

	* src/desktop.c: reshuffled the widgets, switched to an embedded
	toolbox, switched to using real GtkStatusbars for the status bar,
	and (for the present) nuked the body of
	sp_desktop_set_coordinate_status() since it had been #ifdeffed
	out for ages anyway

	* src/desktop.h: removed another constant #ifdef

	* src/widgets/button.c: lobotomized toggle buttons temporarily,
	so multiple windows having independent tool states wouldn't confuse
	toolboxes :/ .. the real fix is to rework SPAction and friends
	to not be so global-minded

	* src/event-context.h: changed sp_ui_generic_menu to
	sp_ui_context_menu

	* src/interface.c: reworked the menu structure and introduced
	sp_ui_main_menubar to create the menubar; changed sp_ui_generic_menu
	to sp_ui_context_menu

	* src/main.c: remove the floating toolbox

	* src/shortcuts.c: remove shortcuts related to the floating toolbox

	* src/verbs.c, src.verbs.h: removing floating toolbox verb

	* src/widgets/sp-toolbox.c,
	src/widgets/sp-toolbox.h,
	src/widgets/Makefile.am: nuked floating toolbox window

2003-11-25 bulia byak <bulia@dr.com>

	* src/select-context.c src/preferences-skeleton.h: new option: drag tolerance

2003-11-25 bulia byak <bulia@dr.com>

	* src/dialogs/dialog-events.c src/dialogs/dialog-events.h: new callback and utility
	functions for defocusing
	* src/widgets/sp-color-selector.c src/widgets/dash-selector.c
	src/dialogs/stroke-style.c: spinbuttons, text fields defocus on enter

2003-11-24 bulia byak <bulia@dr.com>

	* src/dialogs/display-settings.c src/display/canvas-arena.c: cursor tolerance now
	stored in preferences, default changed to 2.0

2003-11-24 bulia byak <bulia@dr.com>

	* src/preferences-skeleton.h: new group for global interface options
	* src/prefs-utils.h src/prefs-utils.c: new functions for double attributes
	* src/select-context.c src/node-context.c: nudge distance (without alt) is taken from preferences (default 1 mm)

2003-11-24 bulia byak <bulia@dr.com>

	New keys in node editor:
	* esc deselects and cancels rubberband and node dragging
	* ctrl-a selects all nodes
	* tab and shift-tab cycle through nodes of the current shape

2003-11-23 Bryce Harrington <bryce@osdl.org>

	* Added include for document.h to knot.c for declaring
	sp_document_undo, as g++ didn't like not having it declared. 

2003-11-22 bulia byak <bulia@dr.com>

	* unified handling of arrow keys in selector and node editor
	* lots of new keys for switching tools and calling dialogs
	* space works as temporary selector toggle
	* new: tools-switch.{c,h} utilities for switching tools
	* cleaned up zoom shortcts (1-5)
	* keys for toggling grid (#) and guides (|)
	* esc deselects, cancels rubberband selection, dragging or transformation 
	(in selector)
	* quit (ctrl-q) now works everywhere
	* new document is opened on startup if none was given on command line
	* closing last open document shuts down the program
	* floating toolbox is at most one copy, as are other dialogs
	* toolbox command is moved to the dialogs menu, ctrl-` as shortcut
	* document windows closeable by ctrl-f4
	* cleaned up status line messages, changed "items" to "objects"
	* quit confirmation dialog appears near the cursor and is transient
	* fix: killing quit confirmation dialog was interpreted as No instead 
	of Cancel
	* preferences are now saved in case of a crash
	* preferences are saved on exit
	* new: prefs-utils.{c,h} utilities for handling preferences
	* misc fixes
	* misc shortcuts

2003-11-18 Ted Gould <ted@gould.cx>

	* src/modules/system.c: Passed the wrong pointer.  Fix is by
	Robert Crosbie.

2003-11-18 Ted Gould <ted@gould.cx>

	* src/widgets/sp-toolbox.c: Adding in an include for gtkimage.h
	to get the stock functions.  This fixes the build under g++.

2003-11-18 Ted Gould <ted@gould.cx>

	* src/modules/extension.c: Changing mkstemp to g_mkstemp for
	compatibility.

2003-11-17 Kees Cook <inkscape@outflux.net>

	* configure.in: SF Patch #843537: more cast corrections from joncruz

2003-11-17 Ted Gould <ted@gould.cx>

	* src/modules/init.c: Changing the process for handeling a directory
	that doesn't exist.  Now passing out a warning, and then returning.
	The warning is on the command line so most users won't have to deal
	with it (it _shouldn't_ happen anyway ;)  Fixes: #843333.

2003-11-17 Kees Cook <inkscape@outflux.net>

	* SF Patch #841940: autoconf update from joncruz
	* SF Patch #842949: lpr fixes from Lynn Kerby
	* SF Patch #842951: variable declaration fixes in interface.c
	* SF Patch #842953: small color picker update from John Bintz
	* SF Patch #842955: additional Darwin updates from Peter
	* Fixed stroke style literal string bug that caused warnings
	* SF Patch #842958: updated inkscape.desktop.in slightly
	* SF Patch #843170: freetype include corrections
	* SF Patch #843326: fixups for g++ compilation from joncruz
	* Adding some more missing "extern C" sections for g++ compiles
	* Small type corrections to quite g++ during -Wall
	* Changed all the #endif // __cplusplus into a standard C comment

2003-11-16  MenTaLguY <mental@rydia.net>

	* src/document.c: reworked sp_desktop_items_*in_box family to be layer-aware

2003-11-16  Kees Cook <inkscape@outflux.net>

	* Cleaned up "desactivate" into "deactivate"
	* Fixed GDK_SCROLL event from mouse wheel scrolling
	* Cleaned up .cvsignore entries for fewer cvs warnings

2003-11-16  MenTaLguY <mental@rydia.net>

	* dialogs/xml-tree.c: events should not be intercepted for the XML dialog

2003-11-16  MenTaLguY <mental@rydia.net>

	* src/version.c: ME R DUM.  Had the arguments to sscanf() reversed.

2003-11-16  Ted Gould <ted@gould.cx>

	* Updating everything so that it builds under g++ again.  Much
	of the updates were to the recently checked in modules code.

2003-11-16  MenTaLguY <mental@rydia.net>

	* New version code (version.c/version.h)
	* Introduced inkscape namespace in parallel with sodipodi namespace
	* Fixed a lot of attribute enum names to reflect sodipodi versus inkscape namespaces
	* src/document.c: new version processing, plus namespace fixes
	* SP_OBJECT_WRITE_INKSCAPE is now SP_OBJECT_WRITE_EXT
	* Inkscape and Sodipodi versions are tracked separately
	* First crack at layers!  set inkscape:groupmode to "layer" or "group" depending on how you want a group to behave
	* A little dead code removal

2003-11-15  MenTaLguY <mental@rydia.net>

	* Mege Jon's improved src/help.c patch from the mailing list (with some temporary cruft of my own that I hope he'll forgive me for)

2003-11-14  Ted Gould <ted@gould.cx>

	* Fixed up the module code alot.  Now extentions are usable with
	a XML file in the /usr/share/inkscape/modules directory.

2003-11-12  Jon Cruz <jon@joncruz.org>
	* Fix warnings due to missing casts - nr-rasterfont.c (840539)
	* Fix warnings due to missing casts - desktop-snap.c (840543)
	* Fix warnings due to missing casts - help.c (840545)

2003-11-11  Robert Crosbie <swingincelt@hotmail.com>

	* Remove kde option from configure (840504)
	* Remove icon hash from sp_icon_new_full (840506)

2003-11-11  magnethead <magnethead@mindspring.com>

	* src/dialogs/transformation.c (sp_transformation_dialog_new):
	Removed images from tabs
	* src/dialogs/object-properties.c (sp_object_properties_dialog):
	Removed images from tabs

2003-11-11  Ted Gould <ted@gould.cx>

	* Starting 0.36 development

2003-11-10  Ted Gould <ted@gould.cx>

	* Release 0.35

2003-11-08  Bryce Harrington <brycehar@bryceharrington.com>
	* Updated About dialog
	* Fixed bug on Editing Windows dialog

2003-11-08  Manny the Gnome
	* Remove KDE dialog option

2003-11-06 Bulia Byak
	* Add cursor-key support

2003-10-19  MenTaLguY  <mental@rydia.net>

	* src/xml/repr-io.c (sp_repr_svg_read_node): handle CDATA
	sections properly

	* Most of the tree.  Unsodipodified pretty much everything I could
	find.  New temporary icons, etc etc...

2003-10-23  Ted Gould  <ted@gould.cx>

	* src/*/Makefile.am: Changing the include paths to make distcheck
	get closer to passing.

2003-10-22  Ted Gould  <ted@gould.cx>

	* configure.in: Changing version to 0.32-hydra1.  This is after
	much discussion and serious contemplation (okay, we never really
	got out the magic eight ball).

2003-10-22  Ted Gould  <ted@gould.cx>

	* src/dialogs/desktop-properties.c, src/widgets/spw-utilities.c,
	src/widgets/spw-utilities.h: Cleaning up desktop properties by
	abstracting things into functions.  This patch was written by
	Bryce Harrington and is tracker entry #822497.

2003-10-21  Ted Gould  <ted@gould.cx>

	* src/interface.c: Changing it so there is an Open Recent menu on
	the Sodipodi menu and the toolbar menu.  This removes some clutter
	in the menu.  This is tracker entry #820223 and the author is
	unknown.

2003-10-21  Ted Gould  <ted@gould.cx>

	* src/dialogs/text-edit.c: Make it so that changes can be applied
	to multiple blocks of text.  This patch was submitted by Petr
	Kovar and is tracker #816676.

2003-10-17  Ted Gould  <ted@gould.cx>

	* src/dialogs/object-properties.c: Applying a patch by Lynn Kerby
	which is tracker number 799363.  This makes it so that if just
	the units are changed the object does not get updated.

2003-10-16  Ted Gould  <ted@gould.cx>

	* src/Makefile.am: Adding the modules to the linking of the
	spsvgview executable.  This fixes the KDE build.  This was tracker
	issue 819963 but unfortunately we don't know who submitted it.

2003-10-15  Ted Gould  <ted@gould.cx>

	* configure.in: Adding a -hydra to the version number.

2003-10-15  Ted Gould  <ted@gould.cx>

	* Changelog: Applying the patch from Mental to do transactions
	in the XML.  It is tracker number: 819745.  More info to follow
	which is (written by Mental)

	* src/document-private.h: removed old SPAction struct and 
	modified SPDocumentPrivate to use new SPReprAction type

	* src/document-undo.c: removed all sp_action stuff,
	sp_document_priv_done(), and all repr callbacks
	(sp_document_set_sensitive): start/suspend transactions on Repr 
	document
	(sp_document_done): now just a wrapper for
	sp_document_maybe_done(), of which it is a special case
	(sp_document_maybe_done): use new transaction facility, and 
	properly trim undo list size to MAX_UNDO
	(sp_document_cancel): new SPDocument method for aborting (and 
	undoing) current operation
	(sp_document_undo, sp_document_redo): rewritten for transactions

	* src/document.c (sp_document_init): updated SPDocumentPrivate
	initialization
	(sp_document_destroy): clean up partial action list
	(sp_document_idle_handler): removed undo stack warning
	(sp_document_warn_undo_stack): removed

	* src/document.h: added sp_document_cancel()

	* src/sp-object.c (sp_object_invoke_build): minor cleanup
	(sp_object_repr_child_added, sp_object_repr_remove_child, 
	sp_object_repr_order_changed, sp_object_repr_attr_changed,
	sp_object_repr_content_changed): removed calls to document 
	callbacks

	* src/dialogs/xml-tree.c: enabled delete button for _all_ 
	attributes [I later plann on enabling/disabling it based on
	a call to the repr's change_attr veto callback]
	(after_tree_move): roll back the transaction if the node
	didn't want to be moved
	(on_attr_select_row_enable): used to be 
	on_attr_select_row_enable_if_not_id()
	(cmd_indent_node, cmd_unindent_node): removed usage of 
	sp_repr_move in favor of simple operations with transactions

	* src/widgets/sp-xmlview-tree (repoint_nodes): no longer needed
	(add_node): switched to an if cascade instead of a switch 
	statement, since SP_REPR_TYPE (repr) is no longer an integer
	(tree_move): use simple operations instead of sp_repr_move

	* src/xml/Makefile.am: added sp-action.c to build

	* src/xml/repr-action.c, src/xml/repr-action.h: transaction
	logging facility for reprs using linked lists of SPReprAction
	structs (conceptually, logs)

	* src/xml/repr-private.h: introduced SPReprClass for different
	node types and added SPRepr::doc field for doc pointer.
	SPReprDoc is now a proper subclass of SPRepr.

	* src/xml/repr-util.c (sp_repr_move, sp_repr_transfer_ids):
	removed

	* src/xml/repr.c: added logging macros and SPRepr subclassing

	* src/xml/repr.h: removed sp_repr_move()

2003-10-09  Ted Gould  <ted@gould.cx>

	* src/libnrtype/nr-type-directory.c: Applying a patch to
	fix the compile from Vitaly Lipatov.

2003-10-08  Ted Gould  <ted@gould.cx>

	* glade/icons.svg src/nodepath.c src/nodepath.h
	src/toolbox.c src/dialogs/node-edit.c src/dialogs/node-edit.h:
	Adding another patch from Bob Jamison which is in the tracker
	under 819054.  This patch adds an alternate join function.  It
	also adds this function to the tool box with an icon.

2003-10-08  Ted Gould  <ted@gould.cx>

	* src/.cvsignore: Adding in spsvgview for cleaner diff's

2003-10-08  Ted Gould  <ted@gould.cx>

	* src/dialogs/item-properties.c: Submitting a patch from
	Bob Jamison which is in the tracker under 819043.  This adds
	the ID to the item properties dialog.

2003-10-06  Ted Gould  <ted@gould.cx>

	* Changelog: Start of the hydra-october branch

2003-10-06  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libarikkei/Makefile.am: New stuff from ariariki

	* src/libnrtype/nr-type-xft.c (nr_type_read_xft_list): Moved here

	* src/libnrtype/nr-type-directory.c (nr_type_build): From ariariki
	(nr_type_read_private_list): Use libarikkei tokenizer
	(nr_type_register): Made public

	* src/libnrtype/Makefile.am: Added libarikkei stuff

	* configure.in: Added libarikkei/Makefile

2003-09-18  Mitsuru Oka <oka@mediasite.co.jp>

	* Initial IA-64 Linux support.

	* libnr/nr-object.h defined new type NRType.

	* src/desktop.c ... src/modules/win32.h ... many files:
	modified all of the unsigned int GObject type by GType and
	unsigned int NRObject type by NRType.

2003-08-17  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnrtype/nr-type-ft2.c (nr_typeface_ft2_setup): Check whether font
	has assigned code points on BMP private area
	(nr_typeface_ft2_lookup): Map BMP private area directly to glyph index only
	if it is free, use planes F and 10 for direct mapping

2003-08-17  Danilo Šegan  <dsegan@gmx.net>

	* configure.in: Added "sr" and "sr@Latn" to ALL_LINGUAS.

2003-07-23  Dmitry G. Mastrukov  <dmitry@taurussoft.org>

	* configure.in: Added Belarusian to ALL_LINGUAS.

2003-07-21  Christian Neumair  <chris@gnome-de.org>

	* src/verbs.c: Fix another typo (preciely->precisely).

2003-07-21  Christian Neumair  <chris@gnome-de.org>

	* src/widgets/paint-selector.c: Fix a typo (colospace->Colorspace).

2003-07-15  Masatake YAMATO  <jet@gyve.org>

	* src/helper/sp-ctrlline.h: Fix a typo(x2->x1).

2003-07-12  Yukihiro Nakai  <ynakai@redhat.com>

	* src/text-context.c (sptc_preedit_changed): New signal handler
	(sp_text_context_setup): Connect "preedit_changed" signal
	(sp_text_context_root_handler): Return TRUE (needed for Gtk+ IM)

	* src/verbs.c (sp_verbs_init): Wrap action name and tip into _()

2003-07-11  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/event-context.c (sp_event_context_private_root_handler): Handle
	GDK_SCROLL (thanks to Tomas Znamenacek)

	* src/xml/repr-util.c (sp_xml_dtoa): Do not print trailing zeroes

	* src/xml/repr.c (sp_repr_document_new): Removed ATTLIST xmlns:xlink

	* src/libnr/nr-svp-private.h: New file

2003-07-09  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-stroke.c: Implement most functionality

	* src/libnr/nr-svp-uncross.c (nr_svl_uncross_full): Process some corner cases
	properly

2003-07-07  Masatake YAMATO  <jet@gyve.org>

	* src/shortcuts.c (sp_shortcut_table_load): set shortcut
	for SP_VERB_EDIT_SELECT_ALL.

	* src/selection-chemistry.[ch] (sp_edit_select_all): New function.

	* src/verbs.c (sp_verb_action_edit_perform): Added case
	SP_VERB_EDIT_CLEAR_ALL and SP_VERB_EDIT_SELECT_ALL.
	(SP_VERB_IS_EDIT): Extended to SP_VERB_EDIT_SELECT_ALL.

2003-07-04  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/svg/svg-length.c (sp_svg_length_set): New method

	* src/sp-spiral.c (sp_spiral_write): Write path here

	* src/sp-image.c (sp_image_repr_read_image): Treat NULL docbase as current directory

	* src/sp-gradient.c (sp_gradient_write): Merged code with flatten_attribute
	(sp_lineargradient_write): Ditto
	(sp_radialgradient_write): Ditto

	* src/rect-context.c (sp_rect_context_root_handler): Get motion hints

	* src/helper/sp-canvas.c (SP_CANVAS_UPDATE_PRIORITY): Use higher priority

	* src/document.c (SP_DOCUMENT_UPDATE_PRIORITY): Use higher priority

2003-06-30  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnrtype/nr-type-ft2.c (nr_typeface_ft2_glyph_outline_get): Do not
	load outlines multiple times, fixes serious memleak

2003-06-28  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/text-edit.c (sp_text_edit_dialog): Added line spacing combo
	(sp_text_edit_dialog_update_object): Update line spacing
	(sp_text_edit_dialog_read_selection): Update control

	* src/sp-text.c (sp_text_set): Parse "sodipodi:linespacing"
	(sp_text_set_shape): Use line spacing

	* src/attributes.c: Added "sodipodi:linespacing"

2003-06-27  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/desktop-properties.c (sp_dtw_border_layer_toggled): New callback
	(sp_desktop_dialog_new): Added border layer
	(sp_dtw_update): Track border layer

	* src/spsvgview.c: Implement slideshow

	* src/sp-namedview.c (sp_namedview_set): Track borderlayer

	* src/desktop.c (sp_desktop_new): Add page border directly to
	main group
	(sp_dt_namedview_modified): Track border layer

	* src/attributes.c: Added "borderlayer"

2003-06-22  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-pattern.c (sp_pattern_update): Implemented, patterns show up again
	(sp_pattern_painter_new): Painter is not GObject anymore, fixes crash
	(sp_pattern_painter_free): Ditto

	* src/sp-root.c: Removed namedview tracking

	* src/sp-object-repr.c (sp_object_type_lookup): Do not register GUI types
	(sp_object_type_register): New method

	* src/sp-namedview.c (sp_document_namedview): Moved it here to clean
	up dependency chain

	* src/sp-item-group.c (sp_item_group_get_child_by_name): New method

	* src/main.c (sp_main_gui): Register GUI object types
	(sp_main_console): Ditto

	* src/document.c (sp_document_create): Check for namedview using name only

	* src/Makefile.am (spsvgview_SOURCES): Uncommented spsvgview

	* src/libnr/nr-object.c: Use listener arrays instead of lists

2003-06-20  Lauris Kaplinski  <lauris@kaplinski.com>

	* configure.in: Version 0.33pre

2003-06-19  Masatake YAMATO  <jet@gyve.org>

	* src/dialogs/desktop-properties.c (sp_color_picker_clicked): Enable "Close"
	button.
	(sp_color_picker_window_close): New function.

2003-06-18  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/object-properties.c (sp_object_properties_dialog_destroy): Disconnect
	signals here, fixes crash

2003-06-18  Masatake YAMATO  <jet@gyve.org>

	* src/toolbox.c (sp_toolbox_*_create): passed tt to 
	sp_toolbox_new.

	* src/dialogs/align.c (sp_align_add_button): passed a 
	GtkTooltips object to sp_button_new_from_data.
	(sp_quick_align_dialog): created a new GtkTooltips object
	and passed it to sp_align_add_button.

	* src/widgets/sp-toolbox.c (sp_toolbox_new): passed a
	GtkTooltips object to sp_button_new_from_data.
	Fix a spelling miss.

	* src/widgets/sp-toolbox.h (sp_toolbox_new): passed a 
	GtkTooltips object.

2003-06-17  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-image.c (sp_image_set): Fix potential crash
	(sp_image_update): Move code here, so canvas items do not dereference
	destroyed pixbuf data

	* src/seltrans.c (sp_sel_trans_handle_request): Reverse shift behaviour for
	rotation (thanks to Pat)

2003-06-16  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/verbs.c: Added 'print direct' option

	* src/interface.c (sp_ui_file_menu): Added print direct if needed

	* src/toolbox.c (sp_toolbox_file_create): Compose print + print direct if needed

2003-06-15  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/modules/ps.c (sp_module_print_plain_setup): Added bitmap/ps choice and
	preferred bitmap resolution selector
	(sp_module_print_plain_finish): If user prefers bitmap printing, composite
	full page from NRArena here

2003-06-13  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/event-context.c (sp_event_context_private_root_handler): Removed
	desktop dialog double-click binding

	* src/widgets/icon.c (sp_icon_new_scaled): New method
	(sp_icon_new_full): Refactored static method
	(sp_icon_image_load_svg): Use scale factor

	* src/xml/repr-io.c (sp_repr_do_read): Unref node after attaching
	(sp_repr_svg_read_node): Ditto

	* src/xml/repr.c (sp_repr_document_new): Ditto

2003-06-12  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/modules/ps.c: Ported Ascii85 filter from The GIMP

2003-06-09  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/modules/kde.cpp (sp_kde_get_save_filename): New method
	(sp_kde_get_write_filename): New method
	(sp_kde_get_open_filename): Use dir/filter/title

	* src/file.c (sp_file_open_dialog): Use KDE file dialog if WITH_KDE
	(sp_file_save_dialog): Ditto
	(sp_file_import): Ditto

2003-06-05  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/print.c: Only high-level stuff

	* src/modules/gnome.c: Moved gnome print frontend here

	* src/modules/ps.*: Moved plain print frontend here

2003-05-25  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-item.h: Removed ::menu and ::knot_holder virtual methods

	* src/object-edit.c: New file, collect all knotholder methods from
	item implementations here

	* src/object-edit.h (sp_item_knot_holder): New file

	* src/object-ui.c: New file, collect all Gtk related methods from
	object implementations here

	* src/object-ui.h (sp_object_menu): New file

2003-05-24  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/print.c (sp_print_preview_document): Use ::set_preview if present

	* src/module.h: Added virtual methof for setting preview

	* src/helper/kde.cpp (sp_module_print_kde_finish): Got working
	(sp_module_print_kde_set_preview): New method

2003-05-18  Hans Breuer  <hans.breuer.org>

	* src/monostd.h : (new file) some defines and includes
	mostly to make up the WIN32 lack of unistd.h

	* config.h.win32 src/makefile.msc src/*/makefile.msc :
	(new files) to build Sodipodi on win32 with M$ toolchain

	* src/winmain.c : (new file) WinMain in it's own file simply 
	calling main()
	* src/main.c : build the common main() for win32 too

	* src/sodipodi.rc : (new file) to compile in the application
	icon on win32

	* src/file.c : use G_DIR_SEPARATOR[_S] instead of '/' ["/"]
	make the file selection work better on win32

	* src/sp-image.c : read images defined by xlink:href="file://...

	* src/sodipodi.c : #inculed "monostd.h" to get S_ISDIR and 
	S_ISREG on win32

	* src/libnr/nr-values.h : when building as DLL exporting 
	variables is quite ugly. Define some constant matrices as
	static for win32 to avoid exporting.

	* src/libnrtype/nr-type-directory.c : #include <io.h> 
	for win32::open() etc.

	* src/libnrtype/nr-type-w32.c : #ifdef HANGUL_CHARSET,
	older SDK headers don't have it

	* src/libnrtype/nr-type-w32.H : #define WIN32_LEAN_AND_MEAN
	before including <windows.h> to reduce namespace pollution

	* src/svg/svg-length.c : #include <config.h> to get WIN32

	* src/widgets/icon.c : S_ISREG, S_ISDIR

	* src/xml/sp-xml.def src/svg/sp-svg.def
	src/libnr/sp-libnr.def src/libnrtype/sp-libnrtype.def :
	(new files) to export functios from modules built as DLLs

	* src/helpers/gnome-utils.c(gnome_uri_list_extract_filenames) :
	use g_filename_from_uri()
	* src/toolbox.c src/interface.c : don't leak the uri list

	* src/xml/repr-util.c : use g_strcasecmp for portability
	* src/svg/svg-length.c : ... and g_snprintf

2003-05-18  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-item.c (sp_item_invoke_print): Only if item is printable

	* src/display/nr-arena-item.c (nr_arena_item_set_visible): New method
	(nr_arena_item_invoke_render): Honour visibility

	* src/dialogs/item-properties.c (sp_item_widget_printability_toggled): Implement

	* src/sp-item.c (sp_item_set): Added "sodipodi:printable" attribute

2003-05-14  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/widgets/button.c (sp_button_set_composed_tooltip): Add primary shortcut
	dynamically to tooltip

2003-05-13  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/toolbox.c (sp_maintoolbox_create_toplevel): Use sp_window_new

	* src/helper/window.c: New file, implement shortcut processing

	* src/helper/window.h: New file

2003-05-12  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/text-context.c (sp_text_context_forget_text): Set object to
	NULL before destroying, so resulting selection::changed does not mess up

	* src/selection-chemistry.c: Removed undo and redo frontends

	* src/shortcuts.c: Moved shortcut code here

2003-05-11  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/zoom-context.c: Removed bogus zoom ui handlers

	* src/sodipodi.c (sodipodi_init): Initialize some shortcuts

	* src/toolbox.c (sp_toolbox_button_clicked): New callback
	(sp_toolbox_button_new_from_verb): New method
	(sp_toolbox_zoom_create): Use verbs

	* src/interface.c (sp_ui_menu_activate): Universal callback
	(sp_ui_menu_append_item_from_verb): New method
	(sp_ui_view_menu): Use verbs for zoom menu items

	* src/event-context.c (sp_event_context_private_root_handler): Use actions for
	certain keycodes

	* src/verbs.c: New file

	* src/verbs.h: New file

	* src/helper/action.c: New file

	* src/helper/action.h: New file

2003-05-07  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-svp-uncross.c (nr_svl_uncross_full): Break slice endpoints if
	there can be potential crossing

2003-05-06  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-svp-render.c (nr_svp_render): Fix some running sum problems

2003-05-04  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnrtype/nr-rasterfont.c (nr_rasterfont_generic_glyph_mask_render): Render
	using NRSVP and mask OR
	(nr_rasterfont_ensure_glyph_slot): Build NRSVP

2003-05-03  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/Makefile.am: Removed art-utils.h

	* src/libnr/nr-svp.c (nr_svl_build_finish_segment): New helper
	(nr_svl_build_moveto): Ditto
	(nr_svl_build_lineto): Ditto
	(nr_svl_build_curveto): New helper
	(nr_svl_from_art_vpath): Use NRSVLBuild
	(nr_svl_from_art_bpath): New method

2003-05-02  Lauris Kaplinski  <lauris@kaplinski.com>

	* sodipodi.desktop.in: Updated by Michael Terry

2003-05-01  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/svg/svg-length.c (sp_svg_number_write_d): Fixed rounding overflow

2003-05-01  Christian Schaller <Uraeus@gnome.org>
	* Fixed up desktop.in file to conform to latest freedesktop standard
	* Fixed up spec.in file to actually work
	* Added missing extensions-skeleton.h to makefile
	* Added spec file to EXTRA_DIST

2003-05-01  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/display/nr-arena-item.c (nr_arena_item_children): Return correct
	value (thanks to MentaLguY)

2003-04-29  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-svp.h: Use more compact format for segments

	* src/libnr/nr-svp.c (nr_svp_from_svl): Use max segment length

2003-04-28  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-svp-render.c (nr_svp_render): New method
	(nr_pixblock_render_svp_mask_or): New method
	(nr_pixblock_render_svl_mask_or): Renamed old one
	(nr_svl_render): Ditto

	* src/libnr/nr-svp.c (nr_svp_point_wind): Implement
	(nr_line_point_distance2): Helper
	(nr_svp_point_distance): Ditto
	(nr_svp_from_svl): New method, implemented packed format and
	renamed old one to S(orted)V(ertex)L(ist)
	(nr_svp_free): Ditto

	* src/display/nr-arena-shape.h: Port all basics to NRSVP

2003-04-27  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/knotholder.c (knot_ungrabbed_handler): Flush object here

	* src/xml/repr-util.c (sp_xml_dtoa): Take '-' into accounti if
	copying integral part

	* src/svg/svg-length.c (sp_svg_length_update): New method

	* src/sp-spiral.c (sp_spiral_update): New method

	* src/sp-star.c (sp_star_update): New method

	* src/sp-ellipse.c (sp_genericellipse_update): Use generic ::set_shape

	* src/sp-rect.c (sp_rect_update): Use generic ::set_shape

2003-04-24  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-svp-uncross.c (nr_svp_uncross_full): Concat segment start only if
	within epsilon, snap intersection point at yslice, if close

2003-04-23  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/widgets/sp-color-slider.c (sp_color_slider_paint): Use proper style painters,
	so Gdk/Gtk crash bug does not show up anymore

	* src/xml/repr-io.c (sp_repr_read_file): Substitute entities (by MentaL)
	(sp_repr_read_mem): Ditto

	* src/style.c (sp_style_merge_from_style_string): Complain only if not the end
	of the style string (thanks to MenTaL)

2003-04-22  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/print.c (sp_module_print_plain_begin): Magic by MenTaL

	* src/libnr/nr-svp-uncross.c (nr_svp_uncross_full): Works properly now for
	all stress-tests except zap.

2003-04-18  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/display/nr-arena-shape.c (nr_arena_shape_update): Switch fill
	completely to new renderer
	(nr_arena_shape_render): Ditto, but use masks as before

	* src/libnr/nr-svp-uncross.c (nr_svp_uncross_full): Pass most stress-tests

2003-04-15  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-svp-render.c (nr_pixblock_render_svp_mask_or): new method
	(nr_pixblock_render_svp_rgba): Frontend, implement for all pixblock modes
	(nr_svp_run_A8_OR): Run callback implementation
	(nr_svp_run_R8G8B8): Ditto
	(nr_svp_run_R8G8B8A8P_EMPTY): Ditto
	(nr_svp_run_R8G8B8A8P_R8G8B8A8P): Ditto
	(nr_svp_run_R8G8B8A8N_R8G8B8A8N): Ditto
	(nr_svp_render): Implement using generic run callbacks

2003-04-14  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-svp-render.c (nr_pixblock_render_svp_rgba): Do runs properly,
	skip if coverage stays 0

2003-04-13  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-svp-render.c: Moved here from old arena code

	* src/libnr/nr-svp-render.h: Ditto

	* src/libnr/nr-svp.c: Ditto

	* src/libnr/nr-svp.h: Ditto

	* src/display/nr-arena-shape.h: Optional experimental new renderer

	* src/libnrtype/nr-typeface.h: Port to NRObject

	* src/display/canvas-arena.c (sp_canvas_arena_init): Use active object
	listener instead of g-signals
	(sp_canvas_arena_destroy): Ditto

	* src/display/nr-arena.h: Derive from NRActiveobject

	* src/display/nr-object.c (nr_object_delete): proper lifecycle management
	(nr_object_setup): Ditto, automatic object
	(nr_object_release): Ditto
	(nr_active_object_get_type): Added NRActiveObject

	* src/display/nr-object.h: Added NRActiveObject

2003-04-12  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/display/nr-object.c: Reimplement in standalone way

	* src/display/nr-object.h: Reimplement in standalone way

2003-04-06  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-marker.c (sp_marker_show_dimension): Reimplement
	(sp_marker_show_instance): Ditto

	* src/display/nr-arena-shape.c (nr_arena_shape_finalize): Detach markers

	* src/sp-shape.c (sp_shape_update_marker_view): Test orientation

2003-03-25  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/display/nr-arena-item.c: Removed ::event signal

	* src/display/nr-object.h: Frontend for future glib-free object system

2003-03-21  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-shape.c (sp_shape_update): Update marker properly
	(sp_shape_set_marker): Parse all three marker types

	* src/sp-marker.c (sp_marker_update): Set reference point in child2parent matrix
	(sp_marker_show_dimension): Copy and set arena items properly
	(sp_marker_show_instance): Set base transfoarm and scale by line width if needed

2003-03-17  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/uri-references.c (sp_uri_reference_resolve): Allow '_' and
	'-' in xlink names.

2003-03-15  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/display/nr-arena-item.h: Made opacity 8-bit integer

2003-03-12  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-marker.c (sp_marker_update): Do it properly
	(sp_marker_write): Do it properly (almost)

2003-03-11  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/print.c (sp_module_print_plain_class_init): Use correct destructor

	* src/sp-marker.c (sp_marker_set): Implement all attributes

2003-03-09  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-object-repr.c (sp_object_type_lookup): Added marker type

	* src/sp-marker.h: New file

	* src/sp-marker.c: New file

	* src/display/nr-arena-image.c (nr_arena_image_render): Use pixblock
	area instead the active area (that may be bigger)

	* src/helper/kde.cpp: Added SPModulePrintKDE object
	(sp_kde_get_module_print): Contructor

	* src/print.c: Port to modules, add KDE option

	* src/module.c (sp_module_register): Check for id, fix crash
	(sp_module_unregister): Ditto
	(sp_module_print_get_type): Implement SPModulePrint

	* src/document.h: Renamed private to priv to be nice with c++

	* src/Makefile.am (kdeldadd): Added LIB_KDEPRINT

	* configure.in: Enable modules by default

2003-03-04  MenTaLguY  <mental@rydia.net>

	* src/desktop.c: changed zoom_status to a spin button with logarithmic increment and a handy context menu
	(sp_dtw_zoom_*): added various event handlers for the new zoom spin button
	(sp_desktop_zoom_page): factored out code duplicated with zoom-context.c
	(sp_desktop_zoom_selection): ditto
	(sp_desktop_zoom_drawing): ditto
	(sp_desktop_widget_init): removed unused SPDesktopWidget::zoom member and replaced zoom label with a spin button

	* src/desktop.h: removed unused SPDesktopWidget::zoom member, added new sp_desktop_zoom_* methods

	* src/zoom-context.c (sp_zoom_drawing): factored out code to desktop.c
	(sp_zoom_page): NRRectD -> NRRectF, factored out code to desktop.c
	(sp_zoom_selection): factored out code to desktop.c

2003-03-06  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/Makefile.am: Compile KDE module if needed

	* src/main.c (sp_main_gui): Initialize/shutdown KDE module if WITH_KDE

	* src/file.c (sp_file_open_dialog): Use KDE file dialog, if WITH_KDE

	* src/Makefile.am: Add KDE libraries if needed

	* configure.in: Added --with[out]-kde configuration option

	* autogen.sh: Added (again) libtoolize

	* acinclude.m4: KDE specific autostuff

	* src/helper/kde.cpp: New file

	* src/helper/kde.h: New file

	* src/helper/kde-private.h: SPKDEBridge sefinition for moc preprocessor

2003-03-03  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/widgets/sp-color-slider.h: Use LGPL

	* src/widgets/sp-color-slider.c: Use LGPL

	* src/libnr/nr-rect.h: Use sensible NULL/empty semantics for union and intersection

	* src/libnr/nr-rect.c: Ditto

	* src/libnr/gen_nr_config.c: Generate basic typedefs (borrowed fromlibart)

	* src/display/nr-arena-item.c (nr_arena_item_invoke_update): Cleanup
	(nr_arena_item_invoke_render): Ditto

2003-03-01  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/modules/*: Various module implementations by Ted Gould

	* extensions/*: Put various unsorted extensions stuff here

	* src/module.c: New file

	* src/module.h: New file

	* src/draw-context.c (sp_draw_context_root_handler): Use 'a' instead of '+'
	as append/new toggle
	(spdc_concat_colors_and_flush): Cut continuation tolerance to avoid extra points at corners
	(spdc_pen_set_point): Draw line segments if appropriate

2003-02-25  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/main.c (main): Use bind_textdomain_codeset to force utf-8 encoding
	(sp_main_console): Init gdk if WITH_XFT

	* src/file.c (sp_export_get_rows): Do not set EMPTY flag on pixblock, or background
	will be forgotten

2003-02-24  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/align.c (sp_quick_align_dialog): Added "distribute" tab
	(sp_align_distribute_h_clicked): New method
	(sp_align_distribute_v_clicked): Ditto

	* configure.in: Removed PACKAGE_LOCALE_DIR definition

	* src/Makefile.am (INCLUDES): Set PACKAGE_LOCALE_DIR here

	* configure.in: Skip xft checking if fontcofig present

2003-02-23  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/print.c (sp_print_fill): Use new paint server signature (does it work?)

	* src/document.c (sp_document_idle_handler): Use new flags signature
	(sp_document_ensure_up_to_date): Ditto

	* src/sp-shape.c (sp_shape_modified): Removed style_modified, instead set
	style here, if flags indicate the need

	* src/sp-text.c (sp_tspan_update): Calculate relative distances here
	(sp_text_update): Ditto

	* src/sp-object.h: Split update and modified flags, involves changes in
	most places actually using them

	* src/gradient-chemistry.c (sp_gradient_ensure_private_normalized): Recycle
	available gradients, instead of always creating new
	(sp_gradient_ensure_radial_private_normalized): Ditto

	* configure.in: Version 0.32pre

2003-02-22  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-text.c (sp_text_set_shape): Honour single dx and dy attributes

	* configure.in: Added check for fontconfig to retrieve nonstandard include directories

2003-02-21  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-image.c (sp_image_set): Set canvas item properties in ::update
	(sp_image_update): Implement

	* src/dialogs/fill-style.c (sp_fill_style_widget_paint_changed): Set CMYK before RGB

	* src/dialogs/stroke-style.c (sp_stroke_style_paint_changed): Set CMYK before RGB

2003-02-20  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-gradient.c (sp_gradient_rebuild_vector): Fix crash if 2 stops coincide

	* src/libnrtype/nr-rasterfont.c (nr_rasterfont_generic_glyph_mask_render): Get real
	bounding box, clip to pixblock area for SVP glyphs

	* src/sp-polygon.c (sp_polygon_write): Write points always

2003-02-18  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/export.c (sp_export_dialog): Default to document name + png
	(sp_export_spinbutton_new): Pack more functions here

	* src/sp-chars.c (sp_chars_update): Implement

	* src/sp-text.c (sp_tspan_update): Implement

	* Makefile.am: Port back to glib gettext

	* configure.in: Port back to glib gettext

	* autogen.sh: Copied working version from The Gimp

	* src/helper/sp-canvas.c (sp_canvas_paint_rect): Try to fit area into pixelstore
	instead of using default image size always

2003-02-17  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-path.h: Turned SPPath/SPShape hierachy upside down, so they make sense
	now, when we do not derive text and clippath from SPPath anymore

	* src/sp-shape.h: Ditto

2003-02-16  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/file.c (file_open_ok): Set directory if OK clicked on it (thanks to Aron Rubin)
	(file_import_ok): Ditto

	* src/sp-ellipse.c (sp_round): Fix sp_round

2003-02-15  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/widgets/paint-selector.c (sp_paint_selector_system_color_set): New method
	(sp_paint_selector_set_mode_color): Added 'get from dropper' checkbox

	* src/dialogs/object-properties.c (sp_object_properties_color_set): Handler
	of system 'color_set' signal, used for getting color value from dropper

	* src/dialogs/stroke-style.c (sp_stroke_style_paint_system_color_set): New method

	* src/dialogs/fill-style.c (sp_fill_style_widget_system_color_set): New method

	* src/toolbox.c (sp_toolbox_draw_create): Added dropper tool

	* src/sodipodi.c (sodipodi_class_init): Added 'color_set' signal
	(sodipodi_set_color): Frontend to signal
	(sodipodi_init_config): Use config_name instead of hardcoded 'preferences'

	* src/dropper-context.c (sp_dropper_context_root_handler): Scale colors
	to [0.0 - 1.0] range and signal hub

	* src/widgets/menu.c: New file, implement sensible menu API

	* src/widgets/menu.h: New file

2003-02-13  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dropper-context.h: New file

	* src/dropper-context.c: New file

2003-02-11  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/desktop.c (sp_desktop_widget_init): Create tooltips, enable sticky zoom
	(sp_desktop_widget_size_allocate): Calculate sticky zoom by area instead of MIN (x, y)

	* src/helper/sp-canvas.h: Added floating point scroll coordinates

	* src/helper/sp-canvas.c (scroll_to): Preserver floating point coordinates

	* src/display/nr-arena-group.c (nr_arena_group_set_child_transform): Do
	not force full update if not needed

	* src/display/nr-arena-item.c (nr_arena_item_set_clip): Do not force
	full update if not needed
	(nr_arena_item_set_mask): Ditto
	(nr_arena_item_set_transform): Ditto

2003-02-09  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-gradient.c (nr_lgradient_render_R8G8B8A8N_EMPTY): New shortcut

	* src/libnr/nr-gradient.h: Made x0 and x0 integers - this introduces possible
	upt to 0.7 pixel error, but other rendering parts are not exact anyways

	* src/sp-paint-server.h: Fill function signature change

2003-02-08  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-gradient.c (nr_rgradient_render_generic_symmetric): Special
	case NR_PIXBLOCK_MODE_R8G8B8A8N and full opacity

	* src/sp-gradient.c (sp_radialgradient_set): Initialize focal point to center if unset

	* src/libnr/nr-gradient.c (nr_lgradient_render_R8G8B8A8N): Special-cased full opacity

	* configure.in: 0.30.1

	* src/libnrtype/nr-rasterfont.c (nr_rasterfont_ensure_glyph_slot): Use
	32 bit integer bbox initially before deciding whether it fits in 16 bit

2003-02-08  gettextize  <bug-gnu-gettext@gnu.org>

	* Makefile.am (SUBDIRS): Add intl, m4.
	(EXTRA_DIST): Add config.rpath.
	* configure.in (AC_OUTPUT): Add intl/Makefile, po/Makefile.in, m4/Makefile.

2003-02-07  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/help.c (sp_help_about): Make default window size the same as document

	* src/style.c: Use custom winding rule and stroke parameter enumerations

	* src/enums.h: Define winding rules and stroke parameters

2003-02-06  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-rect.c (sp_rect_rx_set): Set ::set value(s)
	(sp_rect_ry_set): Ditto

	* src/sp-item.c (sp_item_update): Set arena item transform here

	* src/dialogs/fill-style.c (sp_fill_style_widget_update_repr): Made non-recursive
	(sp_fill_style_widget_update): Ditto

	* src/sp-shape.c (sp_shape_write_transform): Working path tranformation optimizer

	* src/widgets/sp-color-slider.c (sp_color_slider_adjustment_value_changed): Add
	some extra pixels around arrow dirtified area
	(sp_color_slider_paint): Use gtk_draw_box instead of gtk_draw_shadow
	(sp_color_slider_realize): Attach style

2003-02-04  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sodipodi.c (sodipodi_load_config): Generic method by Bryce
	(sodipodi_load_preferences): Frontend, same
	(sodipodi_load_extensions): Ditto
	(sodipodi_get_repr): Test for "extensions"
	(sodipodi_init_config): Generic method by Bryce
	(sodipodi_init_preferences): Frontend by Bryce
	(sodipodi_init_extensions): Ditto

	* src/toolbox.c (sp_toolbox_extension_create): Implemented by Bryce

	* src/extension.c: New file by Bryce Harrington

	* src/extension.h: New file by Bryce Harrington

	* src/extensions-skeleton.h: Ditto

	* src/sp-mask.c: support maskContentUnits

	* src/nodepath.c (create_curve): Do not add 50 to y (why was it here?)

	* src/sp-item-group.c (sp_group_update): Propagate only if update flag set

	* src/sp-item.c (sp_item_set): Set clippath and mask bbox
	(sp_item_update): Ditto

	* src/sp-clippath.c (sp_clippath_build): Implement
	(sp_clippath_set): Ditto, clipPathUnits attribute
	(sp_clippath_update): Ditto
	(sp_clippath_show): Use bbox if needed
	(sp_clippath_set_bbox): New method

2003-02-03  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-item.c (sp_item_release): Release mask
	(sp_item_mask_release): New handler
	(sp_item_mask_modified): Ditto
	(sp_item_set): Parse mask
	(sp_item_show): Show mask
	(sp_item_private_hide): Hide mask

	* src/display/nr-arena-item.c (nr_arena_item_invoke_render): Do masking
	(nr_arena_item_private_dispose): Release mask
	(nr_arena_item_invoke_update): Update mask
	(nr_arena_item_set_mask): New method

	* src/sp-root.c (sp_root_build): Do not check for xmlns:sodipodi to determine
	version, as this is set automatically in xml loader

	* src/slideshow.h: New file

	* src/slideshow.c: New file

2003-02-02  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-rect.c (sp_rect_set): Accept 0.0 as valid for x, y, width and height
	(sp_rect_write): Use 0.0 as default for rx, ry

	* src/rect-context.c (sp_rect_finish): Use ::write to be sure

	* src/display/nr-arena-shape.c (nr_arena_shape_clip): OR masks

	* src/sp-defs.c (sp_defs_update): Implement
	(sp_defs_modified): Ditto

	* src/sp-clippath.c (sp_clippath_update): Implement
	(sp_clippath_modified): Ditto
	(sp_clippath_show): Fix
	(sp_clippath_hide): Implement

	* src/sp-item.c (sp_item_set): Fix clippath
	(sp_item_show): Ditto
	(sp_item_private_hide): Ditto
	(sp_item_display_key_new): New method

	* src/sp-item.h: Use new signature for ::show and ::hide

2003-02-01  Daniel Yacob  <locales@geez.org>

	* configure.in: Added "am" (Amharic) to ALL_LINGUAS.

2003-02-01  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-use.c (sp_use_init): Set width and height default to 100%
	(sp_use_set): Ditto
	(sp_use_bbox): use child transform
	(sp_use_update): Calculate relative lengths, set new viewport

	* src/sp-object.c: Removed ::dispose and some commented out code

	* src/sp-symbol.c: New file

	* src/sp-symbol.h: New file

	* src/enums.h: New file

	* src/xml/repr-io.c (sp_repr_svg_read_node): Return if entity declaration

	* src/sp-root.c (sp_root_init): Set correct default viewport values
	(sp_root_build): Read 'x', 'y', 'version', 'preserveAspectRatio'
	(sp_root_set): Parse added attributes, accept percentages for x, y, width, height
	(sp_root_update): Set up proper transformations to support aspect ratios

	* src/sp-item.h: Added viewPort and item2viewPort transformation to item context

	* src/document.c (sp_document_ensure_up_to_date): Set initial viewport
	and identity transforms in item context
	(sp_document_idle_handler): Ditto

	* src/attributes.h: Added 'version' and 'preserveAspectRatio'

2003-01-31  Masatake YAMATO  <jet@gyve.org>

	* src/main.c (POPT_TABLEEND): Define if it is not defined in
	popt.h. copied from forntline.

2003-01-30  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/guideline.c (sp_guideline_render): Do not round int

	* src/interface.c (sp_ui_close_view): Get widget pointer before killing object

2003-01-28  Lauris Kaplinski  <lauris@kaplinski.com>

	* configure.in: Version 0.30pre

	* src/sp-image.c (sp_image_bbox): Calculate bbox properly

2003-01-28  gettextize  <bug-gnu-gettext@gnu.org>

	* Makefile.am (SUBDIRS): Add intl, m4.
	(EXTRA_DIST): Add config.rpath.
	* configure.in (AC_OUTPUT): Add intl/Makefile, po/Makefile.in, m4/Makefile.

2003-01-28  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnrtype/codepages.h: Win9x codepage declarations

	* src/main.c (WinMain): Use new toplevel toolbox constructor

	* src/text-context.c (sp_text_context_root_handler): Added Gdk_U to unimode

	* src/libnrtype/nr-type-w32.c: Implement ANSI charset and styles

	* src/libnrtype/nr-type-directory.c (nr_type_directory_build): Honour
	stretch attribute in searches

	* src/toolbox.c (sp_maintoolbox_create_toplevel): Broke constructor
	into two parts to allow multiple toolboxes

	* src/interface.c (sp_ui_view_show_toolbox): New method
	(sp_ui_view_dock_toolbox): Ditto
	(sp_ui_view_remove_toolbox): Ditto
	(sp_ui_view_menu): Added menu items for creating toolboxes
	(sp_create_window): Pack toplevel hbox into window

2003-01-26  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/art-utils.c (sp_vpath_from_bpath_transform_closepath): Moved
	array expansion to the right place (thanks to Lynn Kerby)

2003-01-25  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/xml-tree.c (sp_xml_tree_dialog): Allow horizontal scrollbar
	so we do not expand window infinitely

	* src/sp-use.c (sp_use_update): Implemented by MenTaLguY
	(sp_use_modified): Ditto

	* src/libnr/nr-path.c (nr_curve_bbox): Implement fast and exact bbox (thanks to Nathan)
	(nr_curve_bbox_wind_distance): Use exact bbox

2003-01-25  Nathan Hurst  <Nathan.Hurst@infotech.monash.edu.au>

	* src/desktop-snap.c: Fixed vector snapping code, replaced horizontal and
	vertical snapping with generic vector versions

2003-01-21  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/nodepath.c (create_curve): Use NR_MATRIX_DF_TRANSFORM_X (Thanks to
	MenTaLguY for finding these NRPointF/ArtPoint mismatches)

2003-01-20  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnrtype/nr-type-gnome.c (nr_typeface_gnome_new): Ditto

	* src/print.c (sp_print_preview_document): Fix gnome-print support
	(sp_print_document): Ditto

	* src/libnrtype/nr-type-xft.c (nr_type_xft_init): Added ebug printout

	* src/widgets/button.c (sp_button_button_press): Do not grab mouse
	(sp_button_button_release): Ditto

2003-01-19  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/desktop.c (sp_dtw_status_frame_size_request): Always request minimum size

	* configure.in: Define GETTEXT_PACKAGE properly (Thanks to Christian Rose)

	* src/libnrtype/nr-type-xft.c (nr_type_xft_init): Removed CORE, so Xft fontlist
	should now be read properly with Debian PPC and or fontconfig systems

2003-01-15  MenTaLguY  <mental@rydia.net>

	* src/sp-object.c (sp_object_get_unique_id): don't include namespace prefix when generating ids

2003-01-15  MenTaLguY  <mental@rydia.net>

	* src/widgets/sp-xmlview-tree.c (add_node): tree nodes associated with elements pretend they initially have a NULL id
	(element_attr_changed): display elements with a NULL id properly

2003-01-15  MenTaLguY  <mental@rydia.net>

	* src/xml/repr-private.h: added SPXMLNs structure

	* src/xml/repr.h: added decls for sp_xml_ns_uri_prefix() and sp_xml_ns_prefix_uri()

	* src/xml/repr-io.c: improved handling of namespace prefixes
	(sp_repr_qualified_name): added hashtable to keep track of NS prefixes used
	(sp_repr_read_node): Ditto
	(sp_repr_do_read): Ditto + replaced if cascade with calls to sp_xml_ns_uri_prefix()
	(sp_repr_set_xmlns_attr): helper to set xmlns attributes

	* src/xml/repr-util.c: added namespaces list
	(sp_xml_ns_register_defaults): procedure to initialize namespace mapping list
	(sp_xml_ns_auto_prefix): helper routine to automatically select a "good" prefix for a given namespace URI
	(sp_xml_ns_uri_prefix): returns a prefix to use for a given namespace URI, registering a mapping automatically if necessary
	(sp_xml_ns_prefix_uri): returns the namespace URI registered for a given prefix

2003-01-13  MenTaLguY  <mental@rydia.net>

	* src/desktop.c (sp_dtw_desktop_shutdown): rearranged close confirmation buttons according to the Gnome HIG

2003-01-18  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/seltrans.c (sp_sel_trans_grab): Build array of selected item transformations
	(sp_sel_trans_transform): Use original transforms to avoid rounding errors
	(sp_sel_trans_ungrab): Release array

	* src/dialogs/transformation.c: Implemented scaling percentages

2003-01-17  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/draw-context.c (spdc_set_startpoint): Snap startpoint (thanks to Nathan)
	(sp_pen_context_root_handler): Ditto

	* src/dialogs/transformation.c: Implement simple move dialog

2003-01-16  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/guideline.c (sp_guideline_new): Changed signature, fixes
	granular new guideline placement bug
	(sp_guideline_render): Use normal rounding, so guideline and object are aligned

	* src/sp-item.h: Changed the signature of ::snappoints, this forced me to
	use NRPoints near everywhere else too

2003-01-15  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/draw-context.c (spdc_endpoint_snap): Make Ctrl to restrict directions
	to multitudes of 15 degrees (thanks to Nathan Hurst)

2003-01-13  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/file.c (sp_file_open_dialog): Rearrange
	(sp_file_save_dialog): Ditto
	(sp_file_save_document): Ditto

2003-01-13  MenTaLguY  <mental@rydia.net>

	* src/toolbox.c (sp_maintoolbox_create): turned off user resizing of toolbox so it autoresizes properly

2003-01-13  MenTaLguY  <mental@rydia.net>

	* src/toolbox.c (sp_maintoolbox_create): turned off user resizing of toolbox so it autoresizes properly


	* src/print.c (sp_print_plain_bind): Move generic PS code here
	(sp_print_plain_release): Ditto
	(sp_print_plain_fill): Ditto
	(sp_print_plain_stroke): Ditto
	(sp_print_plain_image_R8G8B8A8_N): Ditto
	(sp_print_document): Implement very-very simple non-gnome print dialog

2003-01-12  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/main.c: Made --without-popt working

2003-01-11  MenTaLguY  <mental@rydia.net>

	* src/xml/repr-io.c: removed bogus ATTLIST from DOCTYPE
	(sp_repr_read_file): factored out duplicated code into sp_repr_do_read + added parameter for default namespace
	(sp_repr_read_mem): factored out duplicated code into sp_repr_do_read + added parameter for default namespace
	(sp_repr_do_read): merged duplicated code from sp_repr_read_* family
	(sp_repr_do_read): insert xmlns decls for common namespaces
	(sp_repr_qualified_name): basic namespace handling for SVG, XLink, and Sodipodi namespaces
	(sp_repr_read_node): added parameter for default namespace
	(sp_repr_read_node): removed dead code and broken re-addition of xmlns declarations (xlink?)
	(repr_quote_write): UTF8 is ASCII-compatible -- removed inaccurate comment

	* src/xml/repr.h: added SP_*_NS_URI macros

	* src/document.c (sp_document_new): SVG is default NS
	(sp_document_new_from_mem): SVG is default NS

	* src/file.c (file_import_ok): SVG is default NS

	* src/interface.c (sp_ui_import_one_file): SVG is default NS

	* src/sodipodi.c (sodipodi_init): no default NS
	(sodipodi_load_preferences): no default NS

2003-01-11  Lauris Kaplinski  <lauris@kaplinski.com>

	* configure.in: Check for xft

	* src/libnrtype/Makefile.am: Added xft_sources

	* src/libnrtype/nr-type-directory.c (nr_type_read_xft_list): Load xft typefaces

	* src/libnrtype/nr-type-xft.h: New file

	* src/libnrtype/nr-type-xft.c: New file

2003-01-10  MenTaLguY  <mental@rydia.net>

	* src/dialogs/item-properties.c (sp_item_widget_new): made unimplemented controls insensitive

2003-01-04  MenTaLguY  <mental@rydia.net>

	* src/text-context.c (sp_text_context_finalize): folded back
	into sp_text_context_finish
	(sp_text_context_root_handler): Gtk IM now gets first refusal of
	key press _and_ release events; toggling "unicode mode" now triggers an
	IM reset; "unicode mode" bypasses IM entirely


2003-01-04  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/text-context.c (sp_text_context_root_handler): Moved IM back to
	beginning (thanks to MenTaLguY for pointing this out)

	* src/sp-object.c (sp_object_invoke_update): Merge styles only if parent changed

	* src/sp-text.c (sp_text_update): Implement

	* src/sp-text.c (sp_string_modified): Chain invocation so style gets updated

	* src/widgets/sp-xmlview-content.c: Port to GtkTextView

	* src/dialogs/xml-tree.c: Port to GtkTextView

	* src/text-context.c (sp_text_context_root_handler): Consume xdigits in unicode mode

	* configure.in: Removed GTK_ENABLE_BROKEN

	* src/dialogs/text-edit.c: Use GtkTextView/Buffer

	* src/xml/repr-util.c (sp_repr_transfer_ids): Helper by MenTaLguY
	(sp_repr_move): Ditto

2003-01-03  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/xml-tree.c: Updated (MenTaLguY)

	* src/dialogs/item-properties.c (sp_item_widget_new): Added slider (MenTaLguY)

	* src/text-context.c (sp_text_context_setup): Set up Gtk IM (thanks to MenTaLguY)
	(sp_text_context_setup_text): Move code here (MenTaLguY)
	(sp_text_context_root_handler): Process Gtk IM (MenTaLguY)
	(sptc_commit): Gtk IM signal handler (MenTaLguY)

	* src/sp-text.c (sp_text_insert): Replace < 32 and not whitespace with space

	* src/selection.c (SP_SELECTION_UPDATE_PRIORITY): Set Gtk - 11

	* src/document.c (SP_DOCUMENT_UPDATE_PRIORITY): Set GTK - 12

2003-01-01  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/widgets/button.c (sp_button_paint_arrow): Draw something

2002-12-29  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/event-context.c (sp_event_context_private_root_handler): Pan with
	Shift+Button3 too (useful with windows and < 3 button mice)

	* src/toolbox.c (sp_toolbox_file_create): Mek print buttons insensitive

	* src/sp-text.c (sp_text_write_transform): Fixed it

	* src/main.c (sp_do_export_png): Initialize y0

	* src/file.c (sp_export_png_file): Use pixelstore, export min 64 rows at once,
	fix miscalculated rowstride

2002-12-28  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnrtype/nr-type-directory.c (nr_type_read_w32_list): Use
	windows native fonts, if applicable

	* src/libnrtype/nr-type-w32.h: New file

	* src/libnrtype/nr-type-w32.c: New file

2002-12-27  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/print.c (sp_print_image_R8G8B8A8_N): Implement direct PS version

2002-12-26  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/print.c (sp_print_bpath): Helper
	(sp_print_bind): Implement non-gnome-print version
	(sp_print_release): Ditto
	(sp_print_fill): Ditto
	(sp_print_stroke): Implement non-gnome-print version

	* src/widgets/icon.c (sp_icon_image_load): Generic image loader

	* src/desktop.c (sp_desktop_widget_update_zoom): Make working again

	* src/widgets/button.c: New file

	* src/widgets/button.h: New file

	* src/toolbox.c (sp_toolbox_draw_create): Port to brand new SPButton

2002-12-17  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/desktop.c (sp_desktop_widget_init): Some cleanup

	* src/widgets/ruler.c: Moved to widgets subdir

	* src/widgets/ruler.h: Moved to widgets subdir

2002-12-16  Lauris Kaplinski  <lauris@kaplinski.com>

	* configure.in: --with[out]-gnome-print argument, thanks to MentaLguY

2002-12-15  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-guide.c (sp_guide_set): Fixed horiz/vert

	* src/desktop-events.c (sp_dt_ruler_event): Fixed
	(sp_dt_guide_event): Fixed

	* src/helper/guideline.h: Renamed to avoid conflict with SPGuide object,
	several signature changes

	* src/helper/guideline.c: Ditto, removed properties

	* src/helper/sp-canvas.c (sp_canvas_window_to_world): Oops, was meant to be y0
	(sp_canvas_world_to_window): Ditto

2002-12-14  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/desktop-properties.c: Fully functional color picker

	* src/display/nr-arena-item.h: Ported rendering from NRBuffer to NRPixBlock,
	involves changes in most Arena objects. Added NO_CACHE flag to rendering.

2002-12-13  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/widgets/paint-selector.c (sp_paint_selector_style_button_add): Changed
	SODIPODI_GLADEDIR -> SODIPODI_PIXAMPDIR (Thanks to Ted Gould)

2002-12-11  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-guide.c (sp_guide_class_init): Removed translatability of properties

	* src/knot.c (sp_knot_class_init): Removed translatability of properties

	* src/helper/sp-guide.c (sp_guideline_class_init): Removed translatability
	from properties (who needs this?)

	* src/widgets/icon.h: New file, use as frontend to image loading

	* src/widgets/icon.c: New file

	* src/document.c (sp_document_create): Generic method, implement
	constructors as frontends

	* src/sodipodi.c (sodipodi_dispose): Only unref documents and let
	them manage list

	* glade/icons.svg: New icon definition file

2002-12-08  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/align.c (sp_align_arrange_clicked): Collected all
	arrangement methods into generic one
	(create_base_menu): Compact
	(sp_align_add_menuitem): New helper
	(sp_quick_align_dialog): Use value matrix instead of different callbacks

2002-12-07  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/sp-canvas.c (sp_canvas_expose): Free rects

	* src/attributes.h: Added animation-specific attributes

	* src/sp-animation.c: New file, only skeleton at moment

	* src/sp-animation.h: New file

2002-12-06  Masatake YAMATO  <jet@gyve.org>

	* tools-version.sh: print the path to the tools.

2002-12-06  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-root.c (sp_root_update): Implement

	* src/sp-rect.c (sp_rect_update): Implement
	(sp_rect_set): Request update instead of setting shape immediately

	* src/sp-item-group.c (sp_group_update): Implement

	* src/sp-object.h: Replaced ::read_attr with ::set, signature change.
	This involves modification in all subclasses as well.

	* src/attributes.h: New file. We enumerate/define all allowed attributes
	and properties, to save few string compares later.

	* src/attributes.c: New file

2002-12-04  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-object.c (sp_object_request_update): New method. We implement
	separate ::update cascade that precedes ::modified, and is meant to
	be used for building item states (styles, paths and so on). In many
	aspects it shares code path with ::modified.
	(sp_object_invoke_update): Ditto

Wed Dec  4 01:05:05 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/widget/sp-menu-button.c: Fixed to work well.

	* src/toolbox.c: enable draw buttons.
	Comment out signal_connect_after.

2002-12-03  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-item.h: Replaced libart transforms and bboxes with libnr ones -
	this involves changes almost every file there.

	* src/main.c: Added POPT_AUTOHELP

2002-12-03  Masatake YAMATO  <jet@gyve.org>

	* tools-version.sh (TOOLS): Added automake-1.6 and
	aclocal-1.6. Suggested by MenTaLguY.
	(srcdir): remove version number from grep pattern.

2002-12-02  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/sp-canvas.h: Made scrolling offsets integers

	* src/helper/sp-canvas.c (scroll_to): Scroll instead of draw

	* tools-version.sh (ENVPATTERN): Added FLAGS

2002-12-02  Masatake YAMATO  <jet@gyve.org>

	* distro, tools-version.sh: New files.
	distro comes from distro-0.8.1(http://distro.pipfield.ca/).
	distro and tools-version.sh should be included only in CVS version
	of sodipodi.

	* autogen.sh: Call tools-version.sh.

2002-12-02  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/desktop-properties.c: Partial color picker implementation

2002-12-01  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/text-edit.c: GtkObject/GObject cleanup

	* src/file.c: Ditto

	* TODO: Update with 0.29 tasks

	* src/sp-gradient.c: GtkObject/GObject cleanup

	* src/widgets/sp-widget.c: Ditto

	* src/widgets/gradient-selector.c: Ditto

	* src/widgets/gradient-vector.c: Ditto

	* src/widgets/gradient-position.c: Ditto

	* src/widgets/gradient-image.c: Ditto

	* src/dialogs/fill-style.c: Ditto

2002-11-30  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/view.h: Derive directly from GObject

2002-11-30  Masatake YAMATO  <jet@gyve.org>

	* configure.in (ENABLE_AUTOTRACE): Comment out autotrace/frontline
	checking till frontline becomes gtk+2 based.

2002-11-30  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/selection.h: Inherit directly from GObject

	* src/event-context.h: Inherit directly from GObject

	* src/helper/sp-canvas.c (sp_canvas_item_dispose): Set xform to NULL

	* src/display/canvas-arena.c (sp_canvas_arena_destroy): Fixed typo, so
	multiple destroys are allowed

	* src/nodepath.c: Removed external cursor pointers

	* src/knot.c (sp_knot_set_property): Ref new cursors

	* src/document.c (sp_document_get_type): Inherit directly from GObject

2002-11-29  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/knot.c (sp_knot_handler): Signature change, return correct value as it should

	* src/helper/sp-canvas.c (scroll_to): Blit window, unless explicitly forbidden
	(sp_canvas_size_allocate): Update onlu changed areas

	* src/sp-item.c (sp_item_invoke_bbox): Signature change

	* src/desktop.c (sp_desktop_widget_update_rulers): Reenabled it
	(sp_desktop_set_display_area): Only update canvas root if zoom factor changes
	(sp_desktop_update_scrollbars): Working

	* src/helper/sp-canvas.c (paint): use full visible are for clipping, fixed
	type on specifying area dimensionf in event
	(sp_canvas_get_viewbox): New method

	* src/desktop.c (sp_desktop_set_display_area): New method, replaces show_region
	(sp_desktop_get_display_area): Replacement for ...
	(sp_desktop_zoom_absolute): Use generic sp_desktop_set_visible_area
	(sp_desktop_zoom_relative): Ditto

2002-11-28  Lauris Kaplinski  <lauris@kaplinski.com>

	* configure.in: ... and everyting else - merged SODIPODI_GTK2_BRANCH

	* po/Makevars: Added this

2002-11-28  gettextize  <bug-gnu-gettext@gnu.org>

	* Makefile.am (SUBDIRS): Add intl, m4.
	(EXTRA_DIST): Add config.rpath.
	* configure.in (AC_OUTPUT): Add intl/Makefile, po/Makefile.in, m4/Makefile.

2002-11-27  gettextize  <bug-gnu-gettext@gnu.org>

	* Makefile.am (SUBDIRS): New variable.
	(ACLOCAL_AMFLAGS): New variable.
	(EXTRA_DIST): New variable.
	* configure.in (AC_OUTPUT): Add intl/Makefile, po/Makefile.in, m4/Makefile.

2002-11-25  Lauris Kaplinski  <lauris@kaplinski.com>

	* configure.in: Version 0.29pre

2002-11-25  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/display/nr-arena-glyphs.c (nr_arena_glyphs_group_add_component): Skip
	if zero-sized valid path

	* src/libnr/nr-path.c (nr_path_matrix_f_bbox_f_union): Allow NULL path member
	(nr_path_matrix_f_point_f_bbox_wind_distance): Ditto
	(nr_path_duplicate_transform): Ditto

	* src/libnrtype/nr-typeface.h: Added family member to definition

	* src/libnrtype/nr-type-directory.c (nr_type_register): Use family from def

	* src/libnrtype/nr-type-ft2.c (nr_type_ft2_build_def): Set family member

	* src/libnrtype/nr-type-gnome.c (nr_type_gnome_build_def): Set family member

2002-11-23  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dyna-draw-context.c: Clamp drag to [0.0 1.0]

2002-11-23  Masatake YAMATO  <jet@gyve.org>

	* src/node-context.c: Inlucde document.h.
	(sp_node_context_stamp): New function.
	(sp_node_context_root_handler): Do stamp if space key
	is pressed during dragging.

	* src/nodepath.c (stamp_repr): New function.
	(node_event): Do stamp if the space key is pressed.
	(node_ctrl_event): New function.
	(sp_nodepath_node_new): Connected node_ctrl_event to n->p.knot::event.
	Connected node_ctrl_event to n->n.knot::event. 

	* src/helper/bezier-utils.c (sp_bezier_fit_cubic_full): Fix memry leaks(u, uPrime).
	This leaks are reported by Michel Schinz <Michel.Schinz@epfl.ch>.

2002-11-22  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnrtype/nr-type-gnome.c (nr_typeface_gnome_lookup): Added all
	glyphs to 0xe000 private plane as well.

	* src/widgets/gradient-selector.c (sp_gradient_selector_set_spread): Set
	position widget spread as well
	(sp_gradient_selector_spread_activate): Ditto

2002-11-21  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/curve.c (sp_curve_closepath): Reinitialize pointers, as we may
	have reallocated path in helper

	* src/knotholder.h: Added hook for knot ungrabbing

	* src/knotholder.c (knot_ungrabbed_handler): Implement
	(sp_knot_holder_destroy): Free list items

	* src/sp-ellipse.c (sp_arc_start_set): Use genericellipse closed marker
	(sp_arc_end_set): Ditto
	(sp_arc_set_elliptical_path_attribute): Ditto

	* autogen.sh: Added '--intl' to gettextize flags, seems to be safe for
	older gettexts as well

	* src/dialogs/xml-tree.c (on_tree_select_row): Remove extra blockade
	counting (thanks to MenTaLguY)
	(on_tree_unselect_row): Ditto

2002-11-20  Masatake YAMATO  <jet@gyve.org>

	* src/seltrans.c (sp_sel_trans_init): Set null to
	stamp_cache.
	(sp_sel_trans_ungrab): Clear stamp_cache.
	(sp_sel_trans_stamp): If available, use stamp_cache.
	Else build stamp_cache. l0 is removed. Don't
	free the list here.

	* src/seltrans.h: Included glib.h.
	(struct _SPSelTrans): added new field stamp_cache.

2002-11-20  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/interface.c (sp_ui_dialog_menu): Do not bring up > 1 transform dialogs at once

	* src/seltrans.c (sp_sel_trans_stamp): Reversing still was not correct,
	replaced it with explicit sort

2002-11-20  Masatake YAMATO  <jet@gyve.org>

	* src/seltrans.c (sp_sel_trans_stamp): The order of
	selections is reversed before stamping.

	The bug was reported by Michel Schinz <Michel.Schinz@epfl.ch>.

2002-11-19  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/desktop.c (sp_desktop_prepare_shutdown): New method, allowing us nice
	cleanup before ::destroy is invoked
	(sp_dtw_desktop_shutdown): Prepare desktop for shutdown

	* src/sp-text.c (sp_text_is_empty): Treat unicode private plane as graphical

	* src/libnrtype/nr-type-ft2.c (nr_typeface_ft2_lookup): Use private plane
	direct index, if no unimap
	(nr_typeface_ft2_new): Set unimap flag according to whether we have
	unicode mapping table or not

2002-11-18  Lauris Kaplinski  <lauris@kaplinski.com>

	* configure.in (FREETYPE_LIBS): Added direct freetype check

	* src/widgets/dash-selector.c (sp_dash_selector_menu_item_new): Use created
	GC, as widget is not mapped yet
	(sp_dash_selector_new): Load stroke definitions from preferences

2002-11-17  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/sodipodi-ctrl.c (sp_ctrl_build_cache): Cleaned up bitmap build

2002-11-17  Masatake YAMATO  <jet@gyve.org>

	* src/dialogs/xml-tree.c (sp_xml_tree_dialog): Added small
	space between attribute name text field and set attribute 
	button.

2002-11-17  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/xml-tree.c (sp_xml_tree_dialog): Cleanup by MenTaLguY

	* src/widgets/sp-xmlview-attr-list.c (event_attr_changed): Clamping string
	width to 64[+3], thanks to MenTaLguY

2002-11-16  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/sp-canvas.c (sp_canvas_motion): Get pointer if motion hints are requested

	* src/select-context.c (sp_select_context_item_handler): Use motion hints

	* src/dialogs/text-edit.c (sp_text_edit_dialog_read_selection): Kill annoying
	warning about position > length

	* src/style.h (SP_SCALE24_FROM_FLOAT): Use temporary (double) cast
	(SP_SCALE24_TO_FLOAT): Ditto

	* src/dialogs/xml-tree.c (cmd_set_attr): Use gal unicode wrappers

	* src/widgets/sp-xmlview-attr-list.c (event_attr_changed): Use gal unicode wrappers

	* src/widgets/sp-xmlview-content.c (event_content_changed): Use gal unicode wrappers
	(sp_xmlview_content_changed): Ditto

	* src/widgets/sp-xmlview-tree.c (element_attr_changed): Use gal unicode wrapper
	(text_content_changed): Ditto

	* src/dialogs/xml-tree.c: Sorted out includes a bit
	(set_tree_desktop): Comment aout transient, as some WMs do not do it proper
	(on_desktop_selection_changed): Set/release block
	(on_tree_unselect_row): Ditto
	(on_tree_select_row): Ditto
	(get_dt_select): Use selection helper methods

2002-11-15  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnrtype/nr-type-gnome.c (nr_typeface_gnome_glyph_outline_get): Use
	metrics properly

	* src/libnrtype/nr-type-ft2.c (nr_typeface_ft2_ensure_slot_v): Implement for
	font missing vertical metrics
	(nr_typeface_ft2_ensure_outline): Ditto

	* src/libnrtype/nr-type-directory.c (nr_type_read_private_list): Read face
	number from proper place

	* src/libnrtype/nr-font.c (nr_font_generic_glyph_area_get): Implement

	* src/sp-text.c (sp_string_calculate_dimensions): Use metrics properly
	(sp_string_set_shape): Ditto

	* src/print.c (sp_print_stroke): Print dash

2002-11-14  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/file.c (sp_file_exit): Close all views before exiting

	* src/interface.c (sp_ui_close_view): Destroy viewwidget properly
	(sp_ui_close_all): New method

	* src/sp-rect.c (sp_rect_write_transform): Adjust dash in addition to stroke width

	* src/display/nr-arena-shape.c (nr_arena_shape_update): Only dash if
	total dash length is >= 1.0 pixels

	* src/dialogs/stroke-style.c (sp_stroke_style_line_update_repr): Divide
	dash values by line width
	(sp_stroke_style_scale_line): Multiply dash values by line width
	(sp_stroke_style_line_update): Ditto

	* src/widgets/dash-selector.c (sp_dash_selector_set_dash): Use 1/1000 of
	total dash distance as delta

	* src/sp-gradient.c (sp_gradient_write): Set xlink:href attribute
	(sp_stop_write): Do it the right way

2002-11-13  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/style.c (sp_style_read_dash): Allow comma separators
	(sp_style_read): Read dash presentation attributes

	* src/widgets/dash-selector.c: New file

	* src/widgets/dash-selector.h: New file

	* src/dialogs/stroke-style.c (sp_stroke_style_line_widget_new): Added dash
	pattern selector
	(sp_stroke_style_line_update): Update dash
	(sp_stroke_style_line_update_repr): Ditto
	(sp_stroke_style_line_dash_changed): Callback

2002-11-12  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/xml-tree.c: Naviagtion buttons, better layout and other
	improvements by MenTaLguY <mental@rydia.net>

2002-11-12  Masatake YAMATO  <jet@gyve.org>

	* configure.in: required frontline-0.5.4.
	You can get both autotrace and frontline from
	http://sourceforge.net/autotrace.
	(AC_PROG_AS): wrapped by ifdef.
	Missing to add ChangeLog before commiting.

2002-11-11  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-gradient.c (nr_rgradient_render_generic_symmetric): Fix
	array read overflow
	(nr_rgradient_render_generic_optimized): Ditto

	* src/widgets/paint-selector.c (sp_paint_selector_write_lineargradient): Normalize
	gradient transform and recalculate positions before applying
	(sp_paint_selector_write_radialgradient): Ditto

	* src/widgets/gradient-selector.c (sp_gradient_selector_set_mode): New method
	(sp_gradient_selector_init): Added units and spread optionmenu

	* src/widgets/gradient-position.c (sp_gradient_position_motion_notify): Comment
	out nonuniform placement, as it did not work correctly

	* src/libnr/nr-matrix.c (nr_matrix_d_invert): Fix really silly bug generating identities
	(nr_matrix_f_invert): Ditto

	* src/dialogs/stroke-style.c (sp_stroke_style_paint_update): Set gradient props

	* src/dialogs/fill-style.c (sp_fill_style_widget_update): Set gradient props

	* src/sp-gradient.h: Changed units enumeration, so 0 is default

	* src/display/nr-arena-shape.c (nr_arena_shape_pick): Re-enable SVP based check,
	only do winding check, if object is filled

	* src/file.c: Removed printing code, only frontends remain

	* src/print.c (sp_print_document): Implement
	(sp_print_document_to_file): Ditto

	* src/sp-gradient.c (sp_gradient_ensure_colors): Fixed writing last color
	outside of allocated color vector

2002-11-10  Lauris Kaplinski  <lauris@kaplinski.com>

	* configure.in: Commented out AM_PROG_AS, as there is not such macro
	in my installation

	* src/libnrtype/nr-typeface.h: Signature change for outline unref

	* src/libnrtype/nr-type-gnome.c (nr_typeface_gnome_glyph_outline_get): Implemented
	vertical metrics outline
	(nr_typeface_gnome_glyph_advance_get): Ditto for advance

	* src/libnrtype/nr-type-directory.c: Cleaned up a lot, now we can hopefully
	work with multiple font sources

	* src/libnrtype/nr-type-directory.h: Moved namelist to nr-type-primitives

	* src/libnrtype/nr-type-primitives.c: New file

	* src/libnrtype/nr-type-primitives.h: New file

	* src/libnrtype/nr-type-ft2.c: New file

	* src/libnrtype/nr-type-ft2.h: New file

2002-11-09  Masatake YAMATO  <jet@gyve.org>

	* configure.in (AM_CONDITIONAL(USING_OAF)): moved to toplevel.
	(AM_PROG_AS): used to check gas/as.

	* src/toolbox.c (sp_update_draw_toolbox): tooltips
	are added to the buttons.
	(gtk_event_box_new_with_image_file_and_tooltips) 
	(gtk_event_box_force_draw_parent): New functions.

	* src/widgets/sp-menu-button.c (sp_menu_button_draw_arrow): New function.
	(sp_menu_button_draw): used sp_menu_button_draw_arrow.
	(sp_menu_button_expose): ditto.

2002-11-06  Masatake YAMATO  <jet@gyve.org>

	* src/helper/curve.c (sp_curve_new_from_bpath): Initialize substart
	field.
	(sp_curve_reverse): assert if bs->code is ART_MOVETO_OPEN 
	or ART_MOVETO.

	Added functions that converts multiple items to curves.
	* src/path-chemistry.c (sp_selected_item_to_curved_repr): 
	Use sp_selected_item_to_curved_repr0.
	(sp_selected_path_to_curves0): New function.
	(sp_selected_path_to_curves): New function.
	(SP_TOCURVE_*): Placeholders.

2002-11-05  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/export.c: Made glade-free dialog

	* src/file.c (sp_export_png_file): Make filename const

	* configure.in (CFLAGS): Added GCC warnings

2002-11-03  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/node-edit.c: Removed unused glade stuff

2002-11-04  Masatake YAMATO  <jet@gyve.org>

	* src/dialogs/xml-tree.c (sp_xml_tree_dialog): Added vpaned
	between sp_xmlview_attr_list_new and text fields.

2002-11-03  Lauris Kaplinski  <lauris@kaplinski.com>

	* Makefile.am (SUBDIRS): Removed macros

	* autogen.sh: Made self-contained

	* configure.in: Removed macros

	* src/widgets/sp-xmlview-tree.c: new file by MenTaLguY

	* src/widgets/sp-xmlview-content.c: new file by MenTaLguY

	* src/widgets/sp-xmlview-attr-list.c: new file by MenTaLguY

	* src/libnrtype/nr-type-directory.c: Parsing works for normal fonts

2002-11-02  Masatake YAMATO  <jet@gyve.org>

	* README: removed GYVE.

	* doc/keybindings.txt: added a item for stamping.

	* doc/architecture.txt: Fix a typo in a document.
	/ is forgotten in a sample svg.

	* src/rect-context.c (sp_rect_context_config_widget): Fix a typo in a 
	label.

2002-11-01  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/desktop.h: s/GtkEventBoxClass/SPViewClass/; thanks to MenTaLguY

	* configure.in (have_gnome_print): Gnome-print support can be disabled

	* src/libnrtype/Makefile.am (INCLUDES): SODIPODI_GNOME_PRINT_CFLAGS

	* src/Makefile.am (sodipodi_LDADD): Added SODIPODI_GNOME_PRINT_LIBS
	(INCLUDES): Same for CFLAGS

2002-10-31  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/widgets/font-selector.c (struct _SPFontSelector): Use NRNameListss
	(sp_font_selector_init): Setup family namelist
	(sp_font_selector_family_select_row): Setup style namelist
	(sp_font_selector_set_font): Use namelist

	* src/libnrtype/nr-type-directory.c (nr_type_directory_lookup): New method
	(nr_type_directory_style_list_get): Return list of full names

	* src/libnrtype/nr-typeface.h: Added full name, removed generic style query

2002-10-31  Masatake YAMATO  <jet@gyve.org>

	* src/sp-image.c (autotrace_dialog): invokeed frontline_init
	if it is defined. in-cvs version of frontline defines 
	frontline_init.

2002-10-27  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/curve.c (sp_bpath_clean): Fixed warning (thanks to MenTaLguY)

2002-10-26  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/text-edit.c (sp_text_edit_dialog_update_object): Make
	style srings lowercase before applying

	* src/dialogs/desktop-properties.c (sp_desktop_dialog_new): Added
	togglebutton for showing/hiding page border

	* src/desktop.c (sp_dt_namedview_modified): Show/hide page border

	* src/sp-namedview.c (sp_namedview_read_attr): Listen to "showborder"

2002-10-25  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/item-properties.c: Removed libglade dependency

2002-10-23  Lauris Kaplinski  <lauris@kaplinski.com>

	* configure.in: Added check for popt.h

	* src/dialogs/align.c: Removed libglade dependency

	* src/toolbox.c: Removed libglade dependency

2002-10-22  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/toolbox.c (sp_toolbox_button_new): Helper
	(sp_toolbox_toggle_button_new): Ditto
	(sp_toolbox_file_create): Degladeified method

	* src/file.c (sp_file_export_dialog): Frontend

	* src/toolbox.c (sp_toolbox_toggle_button_new): Helper
	(sp_toolbox_draw_create): Use previous

	* src/main.c: #include <desktop.h>

Mon Oct 21 13:31:41 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* configure.in: Fixed dependency bug.
	Removed --with/without-gnome-xml2 config option.

2002-10-21  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/widgets/sp-toolbox.c: Removed whole gtk.h inclusion

	* src/toolbox.c: Added missing headers

	* src/print.c (sp_print_image_R8G8B8A8_N): Implement
	(sp_print_preview): Remove root transform
	(sp_print_fill): Do not apply ctm twice

Mon Oct 21 02:11:08 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* autogen.sh: Fixed package version in echo message.

	* configure.in: Rewrite using PKG_CHECK_MODULES.
	It reduced verbose package checks.

	* src/main.c: Removed unused GNOME headers.

	* src/sp-ellipse.c: Ditto.

	* src/sp-image.c: Ditto.

	* src/toolbox.c: Ditto.

	* src/dialogs/align.c: Ditto.

	* src/dialogs/desktop-properties.c: Ditto.

	* src/dialogs/display-settings.c: Ditto.

	* src/dialogs/document-properties.c: Ditto.

	* src/dialogs/object-attributes.c: Ditto.

	* src/dialogs/object-properties.c: Ditto.

	* src/dialogs/stroke-style.c: Ditto.

	* src/dialogs/text-edit.c: Ditto.

	* src/dialogs/tool-attributes.c: Ditto.

	* src/dialogs/tool-options.c: Ditto.

	* src/helper/units.c: Ditto.

	* src/widgets/font-selector.c: Ditto.

	* src/widgets/gradient-selector.c: Ditto.

	* src/widgets/paint-selector.c: Ditto.

	* src/widgets/sp-color-selector.c: Ditto.

	* src/selection.c: Renamed release handler.

	* src/sp-gradient.c: Fixed non existence destroy signal bug.

	* src/sp-item.c: Ditto.

	* src/style.c: Ditto.

	* src/widgets/gradient-image.c: Ditto.

	* src/widgets/gradient-vector.c: Ditto.

	* src/sp-object.c: Cleanup.

Sun Oct 20 12:22:03 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* autogen.sh: Specify automake version to 1.6.1.

	* configure.in: Cleanup.

	* src/desktop-events.c: Cleanup and removed unused gnome header.

	* src/desktop.c: Ditto.

	* src/draw-context.c: Ditto.

	* src/dyna-draw-context.c: Ditto.

	* src/event-context.c: Ditto.

	* src/rect-context.c: Ditto.

	* src/spiral-context.c: Ditto.

	* src/star-context.c: Ditto.

	* src/file.c: Ditto.

	* src/help.c: Ditto.

	* src/main.c: Ditto.

	* src/sp-anchor.c: Ditto.

	* src/sp-item-group.c: Ditto.

	* src/sp-item.c: Ditto.

	* src/sp-rect.c: Ditto.

	* src/sp-shape.c: Ditto.

	* src/sp-spiral.c: Ditto.

	* src/sp-star.c: Ditto.

	* src/interface.c: Ditto.
	We lost icon for sp_about function.

	* src/sp-image.c: Cleanup and removed unused gnome header.
	Replaced by GtkDialog.

	* src/document.c: Ditto.

	* src/sodipodi.c: Ditto.

	* src/sp-namedview.c: Fixed bug that SPGuide was unrefed by
	gtk_object_unref.

	* src/sp-object.c: Fixed up release/disopse/finalize policy.
	We now got works again.
	(sp_object_class_init): Fixed object signal handler connection bug
	at release signal creation.

	* src/sp-pattern.c: Moved to g_object_unref.

	* src/sp-root.c (sp_root_release): Check if namedviews is NULL.

	* src/sp-text.c: Moved to g_object_unref.
	Removed unused gnome dependency.

	* src/svg-view.c: Moved to g_object_unref and
	g_object_get/set_data.

	* src/toolbox.c: Reverted from SPWrap to GtkTable.
	It's not a time to use SPWrap.

	* src/dialogs/export.c: Moved arena object to GObject functions.

	* src/dialogs/item-properties.c: Moved to g_object_unref.

	* src/dialogs/xml-tree.c: Cleanup.

	* src/display/nr-arena-glyphs.c: Moved from finalize to dispose.

	* src/display/nr-arena-group.c: Ditto.

	* src/display/nr-arena-image.c: Ditto.

	* src/display/nr-arena-item.c: Ditto.

	* src/display/nr-arena-shape.c: Ditto.

	* src/display/nr-arena.c: Ditto.

	* src/xml/sp-color-selector.c (sp_color_selector_init): Added
	GINT_TO_POINTER cast.

2002-10-20  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-compose-transform.c (nr_R8G8B8A8_P_R8G8B8A8_P_R8G8B8A8_N_TRANSFORM):
	Use mmx subcomposers if needed

	* src/libnr/nr_mmx_R8G8B8A8_P_R8G8B8A8_P_R8G8B8A8_N_TRANSFORM.S: New file

2002-10-19  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-compose-transform.c (nr_R8G8B8A8_P_R8G8B8A8_P_R8G8B8A8_N_TRANSFORM_0):
	Split composer
	(nr_R8G8B8A8_P_R8G8B8A8_P_R8G8B8A8_N_TRANSFORM_n): Ditto

2002-10-18  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr_mmx_R8G8B8A8_P_EMPTY_A8_RGBAP.S: new file

	* src/libnr/nr-path.c (nr_path_matrix_f_bbox_f_union): Moved bpath
	bbox calculation here
	(nr_curve_bbox): Rearrange comparisons

Thu Oct 17 15:25:43 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* Removed macros directory.

	* Makefile.am, autogen.sh, configure.in: Corresponding changes.

2002-10-17  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/sp-canvas.c: Use idle priority lower than Gtk redraw

	* src/display/nr-arena-shape.c (nr_arena_shape_pick): Use libnr
	distance7wind calculation, if item is not at render state
	(nr_arena_shape_update): Only update bbox, if render state is not
	needed. This gave us approximately 10x faster dragging of comlex shapes

	* src/libnr/nr-path.c (nr_line_wind_distance): New helper method
	(nr_curve_bbox_wind_distance): Ditto
	(nr_path_matrix_f_point_f_bbox_wind_distance): Fast method to find
	bbox and/or wind and/or distance to bezier path

2002-10-16  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/print.h: New file, frontend to printing

	* src/print.c: New file, frontend to printing

2002-10-15  Davide Puricelli  <evo@debian.org>

	* debian/*: Updated

2002-10-15  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-item.c (sp_item_invoke_print): Rename, signature change

	* src/sp-item.h: SPItem::print signature change

	* src/forward.h: Added SPPrintContext

	* src/libnr/testnr.c (main): Fill mask with blocks of transparent, opaque
	and random data. This should be closer to reality and (surprise!) gives better
	performance numbers too!

	* src/libnrtype/nr-typeface.c: Moved everyting to virtual method vector

Sun Oct 13 20:54:15 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* autogen.sh: Come from GNOME2.

Sun Oct 13 20:27:04 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/desktop-events.c, src/desktop.c,
	src/dialogs/object-properties.c:
	Moved gnome_pixmap_new_from_file to gtk_image_new_from_file.

	* src/draw-context.c: Replaced finalize with destory.

	* src/sp-polygon.c: Fixed property bug which did not work
	correctly.

	* src/widgets/sp-wrap-box.c, src/widgets/sp-wrap-box.h,
	src/widgets/sp-hwrap-box.c, src/widgets/sp-hwrap-box.h,
	src/widgets/sp-vwrap-box.c, src/widgets/sp-vwrap-box.h: New files.

	* src/widgets/test-wrapbox.c: New file.

	* src/widgets/Makefile.am: Added wrapbox stuffs.

	* src/widgets/.cvsignore: Added test-wrapbox.

	* src/widgets/sp-toolbox.c: Used g_signal_new instead of
	gtk_signal_new, because we need accumulater to control signal
	handler flow, and previous codes are not perfect.

Sun Oct 13 04:18:41 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/sodipodi.c, sodipodi.h: sodipodi_get_elapsed_time()
	was useless, so removed.

	* src/knot.c: Replaced finalize with dispose.
	use GDK_CURRENT_TIME instead of sodipodi_get_elapsed_time().

	* src/select-context.c: Use GDK_CURRENT_TIME instead of
	sodipodi_get_elapsed_time().

	* src/style.c: Replaced destroy with release.

	* src/text-context.c: Replaced finalize with destory,
	because it's not a direct subclass of GObject.
	Replaced noisy gtk_signal_disconnect_by_data with
	g_signal_handlers_disconnect_matched.

	* src/toolbox.c: Use normal gtk_menu_item_set_submenu instead of
	original gtk_menu_popup callback.

	* src/sp-object.c: Fixed illegal signal emission.

	* src/selection.c:

	* src/dialogs/fill-style.c: Added required headler files.

	* src/dialogs/item-properties.c: Depressed warning.

	* src/display/canvas-arena.c: Use GDK_CURRENT_TIME instead of
	sodipodi_get_elapsed_time().

	* src/helper/sp-guide.c: Cleanup.

	* src/widgets/sp-menu-button.c: Use GDK_CURRENT_TIME instead of
	sodipodi_get_elapsed_time().
	Changed popup style.

2002-10-13  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/sp-canvas.c (uta_clear): Experimental method
	(paint): Return, if events pending (commented out)
	(do_update): Return value
	(idle_handler): Use update return value

	* src/libnr/testnr.c: Speed test

	* src/libnr/nr_mmx_R8G8B8_R8G8B8_R8G8B8A8_P.S: New file

	* src/helper/sp-canvas-util.c (sp_canvas_clear_buffer): Be quick

	* src/helper/sp-canvas.h: Moved update flags back here

	* src/display/canvas-arena.c (sp_canvas_arena_update): Sort updates according to affine (again)

	* src/libnr/have_mmx.S: New file (copied from gdk-pixbuf)

	* configure.in (use_mmx_asm): Check for mmx

	* src/libnr/nr-compose.c (nr_R8G8B8A8_P_R8G8B8A8_P_A8_RGBA32): Use mmx if present

	* src/libnr/nr_mmx_R8G8B8A8_P_R8G8B8A8_P_A8_RGBAP.S: Assembler code

2002-10-11  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/sp-canvas.h: Changed object type to SPCanvas, cleanup

	* src/helper/sp-canvas.c: Ditto

2002-10-10  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/sp-canvas.c: Local version of praised GnomeCanvas

	* src/helper/sp-canvas.h: Local version of praised GnomeCanvas

	* src/libnr/nr-gradient.c (nr_rgradient_render_generic_symmetric): Optimize

2002-10-09  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-blit.c (nr_blit_pixblock_mask_rgba32): New method

	* src/libnr/nr-gradient.c (nr_rgradient_renderer_setup): Do r == 0 correctly
	(nr_rgradient_render_generic_optimized): Optimize
	(nr_rgradient_render_block_end): New method

	* configure.in: Version 0.28pre

2002-10-09  Lauris Kaplinski  <lauris@kaplinski.com>

	* configure.in: Version 0.27

	* src/text-context.c (sp_text_context_root_handler): Only turn off unimode,
	if there really is string associated with key

2002-10-09  Masatake YAMATO  <jet@gyve.org>

	* src/sp-image.c (load_splines): changed the order
	of arguments. this change is for frontline-0.5.3.

	* configure.in: required frontline-0.5.3.
	To build sodipodi with frontline you have to get:
	http://autotrace.sourceforge.net/snapshots/autotrace-0.30.8.tar.gz
	http://autotrace.sourceforge.net/frontline/frontline-0.5.3.tar.gz

2002-10-08  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/widgets/gradient-position.c (sp_gradient_position_motion_notify): Do
	not mess with lineargradient skew

	* src/sp-ellipse.c (sp_arc_modified): Continue upstream

Mon Oct  7 01:41:23 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* Merged from HEAD branch.

2002-10-07  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-text.c: Moved frontends here

	* src/dialogs/node-edit.h: Moved declarations here

	* src/desktop.c (sp_desktop_widget_view_position_set): Use grid placement
	(sp_desktop_widget_namedview_modified): Read grid placement
	(sp_desktop_widget_update_rulers): Use grid placement
	(sp_desktop_set_coordinate_status): Disable, until sorted out

	* src/widgets/font-selector.c (sp_font_selector_set_font): Implement

	* src/libnrtype/nr-rasterfont.c (nr_rasterfont_ensure_glyph_slot): Oops, alloc
	and clear the right number of blocks

	* src/libnr/nr-compose.c (nr_R8G8B8_R8G8B8_A8_RGBA32): Implement
	(nr_R8G8B8_EMPTY_A8_RGBA32): Implement

	* src/libnr/nr-blit.c (nr_blit_pixblock_mask_rgba32): Implement

	* src/widgets/font-selector.c (sp_font_preview_expose): Implement
	(sp_font_preview_set_font): Ditto

	* src/libnr/nr-pixblock-pattern.h: New file

	* src/libnr/nr-pixblock-pattern.c: New file

2002-10-06  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/toolbox.c (sp_toolbox_draw_create): Do not expand/fill use correct name for text

	* sodipodi.spec.in: Update to cleaner version by Dag Vieers

	* src/sp-text.c (sp_text_is_empty): New method
	(sp_string_release): Use ::release, not ::destroy
	(sp_tspan_release): Ditto
	(sp_text_release): Ditto

	* src/text-context.c (sp_text_context_selection_changed): Forget text
	(sp_text_context_forget_text): New method, remove empty text item

	* src/sp-text.c (sp_tspan_build): Ensure there is always text child

	* src/sp-item-group.c (sp_group_bbox): Do not set bbox to 0,0,0,0

	* src/select-context.c (sp_select_context_root_handler): Set grabbed to NULL on release

	* src/path-chemistry.c (sp_selected_path_combine): Use item2root transform
	(sp_selected_path_break_apart): Ditto

	* src/sp-item.c (sp_item_i2root_affine): New method

	* src/widgets/gradient-position.c (sp_gradient_position_motion_notify): Reset
	gradient relative transform to symmetric rectilinear if dragging

	* src/style.c (sp_style_merge_ipaint): Use "release" signal
	(sp_style_read_ipaint): Ditto

	* src/sp-pattern.c (sp_pattern_read_attr): Use "release" signal

	* src/sp-item.c (sp_item_read_attr): Use "release" signal

	* src/sp-image.c (autotrace_dialog): Connect "release" instead of "destroy"

	* src/sp-gradient.c (sp_gradient_href_release): Use "release" instead of "destroy"

2002-10-06  suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>

	* src/libnr/Makefile.am (libnr_a_SOURCES): added
	nr-gradient.h. (nr-gradient.c appeared twice.)

2002-10-04  Masatake YAMATO  <jet@gyve.org>

	* src/widgets/font-selector.c: Inlucded stdlib.h for atof.

2002-10-05  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-gradient.c (nr_rgradient_renderer_setup): Use different base renderers
	(nr_rgradient_render_block_symmetric): Split frontend
	(nr_rgradient_render_block_optimized): Ditto
	(nr_rgradient_render_generic_optimized): Asymmetric renderer

	* src/sp-object.c (sp_object_invoke_release): new frontend
	(sp_object_detach): release object
	(sp_object_detach_unref): Ditto

	* src/sp-object.h: Added ::release virtual method

	* src/sp-object.c (sp_object_invoke_shutdown): New method

2002-10-04  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-item-group.c (sp_item_group_ungroup): Rewrite it, so it moves
	all non-items to main <defs> node, preserving logical order and building
	objects in correct sequence

	* src/desktop-affine.c: Methods for root coordinate system, fixes misplacement bug

	* src/libnrtype/nr-rasterfont.c: Made working

	* src/libnrtype/nr-font.c (nr_font_new_default): Do linking
	(nr_font_unref): Ditto

	* src/libnrtype/nr-type-directory.c (nr_typeface_unref): Moved here, implemented list

	* src/display/nr-arena-glyphs.c (nr_arena_glyphs_update): Port to rfont
	(nr_arena_glyphs_pick): Ditto (placeholder)
	(nr_arena_glyphs_set_path): Ditto
	(nr_arena_glyphs_fill_mask): Ditto

	* src/libnr/nr-matrix.h (NR_MATRIX_DF_EXPANSION): New macro
	(NR_MATRIX_DF_EXPANSION2): Ditto

2002-10-03  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-text.c (sp_text_set_shape): Make document insensitive temporarily

	* src/text-context.c (sp_text_context_root_handler): Allow entering
	unicode mode by Ctrl-u

2002-10-02  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-chars.c (sp_chars_add_element): Signature change
	(sp_chars_show): Ditto

	* src/display/nr-arena-glyphs.c (nr_arena_glyphs_group_add_component): Signature change

	* src/libnrtype/nr-rasterfont.c (nr_rasterfont_new): Set it up
	(nr_rasterfont_unref): Release glyph slots
	(nr_rasterfont_render_glyph_mask): Implement
	(nr_rasterfont_ensure_glyph_slot): New helper

	* src/sp-text.c: Port to new chars signature

	* src/sp-chars.h: Use font instead of typeface

	* src/libnr/nr-gradient.c (nr_lgradient_render_block): Signature change
	(nr_lgradient_renderer_setup): Use generic base class
	(nr_rgradient_renderer_setup): Ditto
	(nr_rgradient_render_block): Signature change

	* src/libnr/nr-render.h: New file

2002-10-01  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/text-edit.c (sp_text_edit_dialog_update_object): Use libnrtype
	(sp_text_edit_dialog_read_selection): Ditto
	(sp_text_edit_dialog_font_changed): Ditto

	* src/libnrtype/nr-type-directory.h: Implement NRNameList

	* src/libnrtype/nr-type-directory.c (nr_type_directory_lookup_fuzzy): Force lowercase
	(nr_type_directory_family_list_destructor): Implement
	(nr_type_directory_family_list_get): Ditto
	(nr_type_directory_style_list_destructor): Ditto
	(nr_type_directory_style_list_get): Ditto

	* src/widgets/font-selector.c: New file

	* src/widgets/font-selector.h: New file

	* src/libnrtype/nr-rasterfont.c: New file

	* src/libnrtype/nr-rasterfont.h: New file

	* src/libnr/nr-matrix.c (nr_matrix_f_set_scale): Correct signature

	* src/sp-text.c (sp_font_get_glyph_bbox): Use libnrtype
	(sp_font_get_glyph_advance): Ditto
	(sp_font_get_glyph_bbox_lr2tb): Ditto
	(sp_string_calculate_dimensions): Ditto
	(sp_string_set_shape): Ditto

	* src/sp-chars.c (sp_chars_destroy): Use libnrtype
	(sp_chars_bbox): Ditto
	(sp_chars_show): Ditto
	(sp_chars_clear): Ditto
	(sp_chars_add_element): Ditto
	(sp_chars_normalized_bpath): Ditto
	(sp_chars_do_print): Ditto

	* src/sp-chars.h (sp_chars_set_paintbox): Use libnrtype

	* src/libnrtype/nr-type-gnome.h: Placeholder

	* src/libnrtype/nr-type-directory.c: New file

	* src/libnrtype/nr-type-directory.h: New file

	* src/libnrtype/nr-font.c: New file

	* src/libnrtype/nr-font.h: New file

	* src/libnrtype/nr-typeface.c: New file

	* src/libnrtype/nr-typeface.h: New file

	* src/Makefile.am (SUBDIRS): Added libnrtype

	* src/libnr/nr-path.h: Placeholder

2002-09-30  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/widgets/gradient-position.c (spgp_clip_line): New method
	(spgp_draw_rect): Ditto

Sun Sep 29 14:17:31 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/knot.c, knot.h: Moved SPKnot from subclass of GtkObject
	to GObject.

	* src/knotholder.c: Ditto

	* src/seltrans.c: Ditto

	* src/selection.c: Migrated dispose to destroy for remainder.

	* src/desktop-events.c: Fixed to connect signal handler correctly.

	* src/desktop.c: Fixed to add button correctly.

	* src/sp-use.c: Depressed gchar * warnings.

	* src/sp-guide.c: Indented.

2002-09-29  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-gradient.c (sp_gradient_set_gs2d_matrix_f): Oops, write the right transform

	* src/widgets/gradient-position.c: Use new sensible internals

	* src/widgets/gradient-position.h: Ported to ne internals

	* src/widgets/paint-selector.c (sp_paint_selector_set_mode_gradient): Removed
	separate linear/radial optionmenu

	* src/widgets/gradient-selector.c (sp_gradient_selector_set_gs2d_matrix_f): New method
	(sp_gradient_selector_get_gs2d_matrix_f): Ditto
	(sp_gradient_selector_set_rgradient_position): Implement
	(sp_gradient_selector_init): Pax buttons under vector

	* src/widgets/gradient-position.c: New positioning syntax, lots of radial stuff

	* src/libnr/nr-matrix.h (NR_MATRIX_DF_TRANSFORM_X): Convenience macro
	(NR_MATRIX_DF_TRANSFORM_Y): Ditto

	* src/dialogs/object-properties.c (sp_object_properties_dialog): Shorten string

	* src/dialogs/stroke-style.c (sp_stroke_style_paint_update): Use new
	gradient widgets syntax
	(sp_stroke_style_paint_dragged): Ditto
	(sp_stroke_style_paint_changed): Ditto

	* src/dialogs/fill-style.c (sp_fill_style_widget_update): Use new gradient
	widgets syntax for bbox, transform, position
	(sp_fill_style_widget_paint_dragged): Ditto, use helper
	(sp_fill_style_widget_paint_changed): Ditto

	* src/sp-gradient.c (sp_gradient_get_gs2d_matrix_f): New method
	(sp_gradient_set_gs2d_matrix_f): Ditto
	(sp_gradient_write): Implement
	(sp_lineargradient_write): Ditto
	(sp_radialgradient_write): Ditto

	* src/select-context.c (sp_select_context_root_handler): Process button
	release only if grabbed

2002-09-28  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/widgets/gradient-vector.c (sp_gvs_rebuild_gui_full): Do not add id label

	* src/widgets/paint-selector.c (sp_paint_selector_init): Added radial button
	(sp_paint_selector_set_style_buttons): Set radial
	(sp_paint_selector_set_mode_gradient): Set correct button

	* glade/Makefile.am (pixmaps): Added fill_radial.xpm

Sat Sep 28 14:35:21 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/toolbox.c: Use gtk_window_set_resizable() instead of
	gtk_window_set_policy(), because it is deprecated in GTK+2.

	* src/file.c: Depressed warning on gnome_print_master_perview_new.

	* src/sp-object.h, sp-object.c: Added destroy signal and
	remove dispose signal.

	* src/selection.c, sp-gradient.c, style.c,
	src/widgets/gradient-vector.c: Moved dispose to destroy.

	* src/sp-guide.c: Added property.

	* src/helper/sp-guide.c: Added property.

	* src/sp-namedview.c: Moved gtk_object_unref to g_object_unref.

	* src/dialogs/text-edit.c: Removed some GNOME dependencies.

	* src/helper/gnome-utils.h gnome-utils.c: New file.
	Utilities to help to remove GNOME libraries.

	* src/interface.c: Moved some GNOME functions to gnome-utils.h.

2002-09-27  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/widgets/paint-selector.c (sp_paint_selector_get_gradient_position_floatv): Set radial

	* src/libnr/nr-pixblock-pixel.c (nr_compose_pixblock_pixblock_pixel): Kill
	division by zero, if fg and bg are both fully transparent

	* src/dialogs/fill-style.c (sp_fill_style_widget_update): Implement radial
	(sp_fill_style_widget_paint_dragged): Ditto
	(sp_fill_style_widget_paint_changed): Ditto

	* src/sp-gradient.c (sp_radialgradient_set_position): New method

	* src/gradient-chemistry.c (sp_gradient_ensure_radial_private_normalized): New method
	(sp_gradient_get_radial_private_normalized): Ditto
	(sp_item_force_fill_radialgradient_vector): Ditto
	(sp_item_force_stroke_radialgradient_vector): Ditto

2002-09-27  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/widgets/paint-selector.c (sp_paint_selector_set_gradient_radial): New method

	* src/widgets/gradient-position.c (sp_gradient_position_set_mode): New method
	(sp_gradient_position_update): Setup linear/radial renderer as needed

	* src/widgets/gradient-selector.c (sp_gradient_selector_set_mode): New method
	(sp_gradient_selector_set_lgradient_position): Renamed method
	(sp_gradient_selector_set_rgradient_position): Ditto
	(sp_gradient_selector_get_lgradient_position_floatv): Renamed method
	(sp_gradient_selector_get_rgradient_position_floatv): Ditto

	* src/libnr/nr-pixblock-pixel.c (nr_compose_pixblock_pixblock_pixel): Fixed
	R8G8B8 target to render channels separately

	* src/sp-gradient.c (sp_gradient_from_position_xy): Made gradient method,
	changed signature, added gradientTransform to list
	(sp_gradient_to_position_xy): Ditto

	* src/libnr/nr-pixblock-pixel.c: New file

	* src/libnr/nr-pixblock-pixel.h: New file

	* src/libnr/nr-gradient.c (nr_lgradient_renderer_setup): Use gradientspace
	(nr_lgradient_render_block): Use generic renderer, if no specific one
	(nr_lgradient_render_generic): Implement

	* src/sp-gradient.c (sp_gradient_render_vector_block_rgb): Compose correctly

	* src/libnr/nr-blit.c (nr_compose_pixblock_pixblock_pixel): Generic pixel composer

2002-09-26  Masatake YAMATO  <jet@gyve.org>

	* src/select-context.c (sp_select_context_root_handler):
	used sp_canvas_item_grab where I want to receive key_press event.
	(sp_select_context_item_handler): Ditto.

2002-09-26  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-gradient.c: New file

	* src/libnr/nr-gradient.h: New file

	* src/sp-gradient.c (sp_lineargradient_painter_new): Construct libnr renderer
	(sp_lg_fill): Use it
	(sp_radialgradient_painter_new): Construct renderer
	(sp_rg_fill): Use it

	* src/sp-shape.c (sp_shape_print): Clear pixelstore

	* src/sp-chars.c (sp_chars_print_bpath): Clear pixelstore before each rendering

	* src/sp-gradient.c (sp_rg_fill): Oops, moved declaration before statements
	(sp_rg_fill): Ditto

2002-09-25  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-compose.c (nr_R8G8B8A8_N_EMPTY_R8G8B8A8_P): Oops, evil bug

	* src/libnr/nr-rect.c (nr_rect_d_matrix_d_transform): New method
	(nr_rect_f_matrix_f_transform): Ditto

	* src/sp-object-repr.c (sp_object_type_lookup): Added <pattern>

	* src/sp-pattern.h: New file

	* src/sp-pattern.c: New file

	* src/Makefile.am (sodipodi_SOURCES): Added sp-pattern.[c,h]

	* src/sp-gradient.c (sp_rg_fill): Implement, seems correct although SLOW
	(sp_radialgradient_painter_new): Implement, except viewport percentages
	(sp_radialgradient_read_attr): Initialize right numbers
	(sp_radialgradient_init): Ditto

Tue Sep 24 01:01:21 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/interface.c (sp_ui_menu_append_item): Fixed to work well,
	even if label is exist and stock is not exist.

	* src/widgets/sp-menu-button.c (sp_menu_button_menu_position):
	Modified for popup menu calculation.

	* src/widgets/sp-toolbox.c: Added GTK_SIGNAL_FUNC cast.

2002-09-24  Masatake YAMATO  <jet@gyve.org>

	* src/select-context.c (sp_select_context_root_handler,
	sp_select_context_item_handler): used GDK_space instead
	of GDK_BUTTON_2. Added Lauris's event mask code after 
	grabbing an item.

	* src/seltrans.c (sp_sel_trans_handle_stamp): removed.
	(sp_seltrans_handle_event): handled "pressing space" as 
	stamping.
	(gdk/gdkkeysyms.h): included.

	* src/knot.c (sp_knot_class_init): removed "stamped" signal 
	again.
	(sp_knot_handler): didn't emit stamped anymore.

2002-09-24  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/nr-matrix.c (nr_matrix_d_set_scale): new method
	(nr_matrix_f_set_scale): Ditto

	* src/sp-use.c (sp_use_href_changed): Use unref instead of destroy
	(sp_use_destroy): Ditto

	* src/seltrans.c (sp_sel_trans_scale): Allow scaling in one dimension,
	if it is > 0.0
	(sp_sel_trans_scale_request): Snap in one dimension, if > 0.0

	* src/sp-path.c (sp_path_bbox): Allow empty bboxen

	* src/helper/art-utils.c (sp_bpath_matrix_d_bbox_d_union): Union always,
	even if computed bbox is empty

Mon Sep 23 01:37:09 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/widgets/sp-menu-button.c: Clean up code.

	* src/widgets/sp-menu-button.c (sp_menu_button_menu_position):
	In GTK+2, button widget share its window among toplevel window,
	so I fixed offset calculation.

	* src/knot.c: Clean up unused marshaller.

	* src/knotholder.c: Ported.

2002-09-23  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/sp-canvas-util.c (sp_canvas_item_grab): new method to
	circumvent GnomeCanvas bug

	* src/knot.c (sp_knot_handler): Use sp_canvas_item_grab

2002-09-23  Masatake YAMATO  <jet@gyve.org>

	* src/knot.c (sp_knot_class_init): Added "stamped" signal
	(sp_knot_handler): Emit it

	* src/select-context.c (sp_select_context_item_handler): Do stamping
	(sp_select_context_root_handler): Ditto

	* src/seltrans.c (sp_sel_trans_stamp): new method
	(sp_show_handles): Connect "stamped" signal
	(sp_sel_trans_handle_stamp): new handler

2002-09-23  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/seltrans.c (sp_seltrans_handle_event): Just here for my debugging

	* src/knot.c (sp_knot_handler): No ungrabbing, added TOP CANVAS HACK,
	so we can now get key events and do not kill Gdk

	* configure.in: Version 0.27pre

Sun Sep 22 22:06:57 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/desktop.c: add destroy call for GtkDialog.

	* src/sp-object.c, sp-polyline.c, style.c,
	src/display/canvas-area.c, src/widgets/gradient-image.c,
	gradient-vector.c: Ported and fixed.

	* src/sp-ruler.c: Bug fixed that
	misspelling s/GtkHRuler/SPHRuler/ and s/GtkVRuler/SPVRuler/.

	* src/widgets/sp-menu-button.c, sp-menu-button.h, src/toolbox.c:
	Found duplicated signal "activate".
	So, renamed SPMenuButton::activate to "activate-item" and
	did corresponding change for toolbox.c.

	* src/helper/sp-ctrlline.c: Avoid to duplicated free call for ctrlline->svp.

2002-09-22  Lauris Kaplinski  <lauris@kaplinski.com>

	* configure.in: Version 0.26

	* src/main.c: #include <locale.h>, thanks to Masatake

Sun Sep 22 22:21:14 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/sp-ruler.c: Bug fixed that
	misspelling s/GtkHRuler/SPHRuler/ and s/GtkVRuler/SPVRuler/.

Sat Sep 21 03:02:21 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* Now, sodipodi can build and start up again (but often cause segv).

	* src/display/canvas-arena.c, nr-arena-glyphs.h, nr-arena.c:
	Ported.

	* src/dialogs/export.c, text-edit.c: Ported.

	* src/widgets/sp-color-slider.c, sp-menu-button.c: Ported.

	* src/*.c, *.h: Ported.

	* glade/*.glade: conveted to glade-2.

2002-09-21  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/fill-style.c (sp_fill_style_widget_new): Fill rule selector
	(sp_fill_style_widget_update): Update fill rule selector
	(sp_fill_style_widget_update_repr): Ditto
	(sp_fill_style_widget_fill_rule_activate): Set fill-rule

	* src/document.c (sp_document_new): Do not set style

	* src/xml/repr.c (sp_repr_merge): Duplicate node without id key

	* src/sp-path.c (sp_path_build): Set fill to none for old version open path

	* src/bonobo/embeddable-document.c (sp_embeddable_document_pf_load): New
	document constructor signature, thanks to Ted Gould
	(sp_embeddable_document_ps_load): Ditto
	(sp_embeddable_document_new): Ditto

	* src/help.c (sp_help_about): use sp_text_set_repr_multiline

	* src/style.c (sp_style_write_difference): Rewind pointer

	* src/sp-ellipse.c (sp_genericellipse_set_shape): Request modified
	(sp_arc_modified): Implement, write path attribute

2002-09-20  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-object.c (sp_object_private_write): Duplicate repr if needed

	* src/xml/repr-util.c (sp_repr_set_double_default): New method

	* src/sp-rect.c (sp_rect_write): Set default on radiuses

	* src/sp-root.c (sp_root_write): Set namespaces here

	* src/xml/repr.c (sp_repr_document_new): Set doctype and comment

	* src/xml/repr-io.c (sp_repr_read_file): Set doctype and comment if SVG
	(sp_repr_read_mem): Ditto
	(sp_repr_save_stream): Save doctype and comment

Thu Sep 19 19:24:04 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/sp-marshal.*, src/Makefile.am: Removed old marshaller codes.

2002-09-19  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-text.c (sp_string_set_shape): Update position array
	(sp_text_get_cursor_coords): New method
	(sp_text_set_shape): Set tspan position to text, if unset; Limit block
	to tspans with unspecified role
	(sp_text_insert_line): Implement

	* src/text-context.c (sp_text_context_setup): Set blink to 250ms
	(sp_text_context_selection_modified): Implement, update cursor position
	(sp_text_context_selection_changed): Ditto
	(sp_text_context_root_handler): Cursor placement, insertion and deletion
	work as they should

	* src/display/nr-arena-shape.c (nr_arena_shape_update): Do not try to
	fill paths consisting of single lineto

	* src/gradient-chemistry.c (sp_gradient_ensure_private_normalized): Only keep
	if hrefcount == 1 (fixed bug)

	* src/style.c (sp_style_read): Only parse CMYK if RGBA present

2002-09-18  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-ellipse.c (sp_arc_set_elliptical_path_attribute): Lay 2PI arcs as 2 segments
	(sp_arc_write): Write SVG <ellipse> if it really is one

	* src/style.c (sp_style_write_ienum): We compare computed values, to
	avoid unnecessary setting of attributes
	(sp_style_merge_from_parent): Set only computed values for everything

	* src/helper/art-utils.c (sp_vpath_from_bpath_closepath): New method,
	borrowed relevant helpers from libart code

	* src/display/nr-arena-shape.c (nr_arena_shape_update): Closeall if filled,
	limit min width to 0.125 instead of cutting it to 0

2002-09-17  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/event-context.c (sp_event_context_destroy): Do not disconnect
	desktop signal, as there is no such
	(sp_event_context_new): Do not connect desktop signal

	* src/draw-context.c (sp_pencil_context_root_handler): Changed grabbing only
	to happen, if pointer is moved button-down. This changed irritating
	double-click total grab problem.
	(sp_pen_context_root_handler): Ditto

	* src/display/nr-arena-group.c (nr_arena_group_update): Multiply
	with group second transformation

	* src/display/nr-arena-group.h: Added child_affine member

	* src/sp-root.c (sp_root_read_attr): Use NRMatrixD for viewbox
	(sp_root_show): Implement, apply viewBox
	(sp_root_bbox): Ditto
	(sp_root_print): Ditto

	* src/sp-item.c (sp_item_i2doc_affine): Apply viewBox

Tue Sep 17 13:50:40 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/dialogs/stroke-style.c: A few fix from my office.

Mon Sep 16 21:31:33 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/display/*: Really done.

	* src/*: Half done, but partially adhock.

Mon Sep 16 14:22:10 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* Start migration to GTK+2 environment.

	* Makefile.am, configure.in, acconfig.h: Use pkgconfig, GLib2,
	Pango, GTK+2, GNOME2, etc.

	* src/dialogs/*: Done.

	* src/display/*: Done.

	* src/helper/*: Done.

	* src/svg/*: Done.

	* src/widgets/*: Done.

	* src/xml/*: Done.

	* src/*: Partialy done.

2002-09-16  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/png-write.c (sp_png_get_block_stripe): Helper
	(sp_png_write_rgba): Use striped writer
	(sp_png_write_rgba_striped): New method

	* src/dialogs/export.c (sp_export_get_rows): Renderer
	(sp_export_do_export): Use striped exporter

	* src/file.c: Added <time.h> - Thanks to Masatake for finding it

2002-09-15  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/display/nr-arena-image.c (nr_arena_image_render): Use libnr
	transformed composition methods

	* src/libnr/nr-compose-transform.c: New file

	* src/libnr/nr-compose-transform.h: New file

2002-09-15  Masatake YAMATO  <jet@gyve.org>

	* src/toolbox.c (sp_maintoolbox_drag_data_received): made
	it a static scoped function.
	(sp_maintoolbox_create): Connected sp_maintoolbox_drag_data_received
	to maintoolbox. (glade based version is obsoleted.)

	* src/toolbox.c (sp_maintoolbox_drag_data_received): removed 
	declaration.

2002-09-15  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/file.c (sp_file_save_as): Added "file type" optionmenu
	(sp_file_save_type_activate): Helper
	(file_save_ok): Save plain SVG if needed

	* src/sp-namedview.c (sp_namedview_write): Implement

	* src/sp-text.c (sp_text_write): Implement

	* src/sp-use.c (sp_use_write): implement

	* src/sp-root.c (sp_root_write): Implement

	* src/sp-polyline.c (sp_polyline_write): Implement

	* src/sp-line.c (sp_line_write): Implement

	* src/sp-image.c (sp_image_write): Implement

	* src/sp-gradient.c (sp_stop_write): Implement

	* src/sp-defs.c (sp_defs_write): Implement

	* src/sp-clippath.c (sp_clippath_write): Implement

	* src/sp-anchor.c (sp_anchor_write): Implement

	* src/sp-polygon.c (sp_polygon_write): new ::write syntax

	* src/sp-spiral.c (sp_spiral_write): New ::write syntax

	* src/sp-star.c (sp_star_write): New ::write syntax

	* src/sp-ellipse.c (sp_ellipse_write): New ::write syntax
	(sp_circle_write): Ditto
	(sp_arc_write): Ditto

	* src/sp-rect.c (sp_rect_write): New ::write syntax

	* src/sp-shape.c (sp_shape_write): New ::write syntax

	* src/star-context.c (sp_star_finish): New ::write syntax

	* src/spiral-context.c (sp_spiral_finish): New ::write syntax

	* src/knotholder.c (knot_moved_handler): new ::write syntax

	* src/sp-object.c (sp_object_invoke_write): Renamed and enhanced
	::write_repr method, can now construct trees and write plain SVG

	* src/sp-item-group.c (sp_group_write): Implement

2002-09-14  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/toolbox.c (sp_maintoolbox_menu_button_press): Construct main
	menu here dynamically

	* src/main.c (sp_main_console): Hide documents for nongui, slideshow

	* src/interface.c (sp_ui_file_menu): Recent list
	(sp_ui_main_menu): Ditto
	(sp_menu_append_recent_documents): New helper

	* src/help.c (sp_help_about): Hide document from list

	* src/file.c (sp_file_open): New method
	(sp_file_open_dialog): Renamed old sp_file_open

	* src/sodipodi.c (sodipodi_add_document): Emit "new_document"
	(sodipodi_remove_document): Emit "destroy_document", update recent list
	(sodipodi_segv_handler): Truncate filenames to sensible part

	* src/toolbox.c (sp_maintoolbox_open_one_file_with_check): Use sp_file_open

2002-09-13  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/draw-context.c (sp_pencil_context_root_handler): Clear anchors
	(spdc_finish_endpoint): Ditto
	(spdc_pen_finish): Ditto

	* src/document.h: Moved uri/base/name to main structure

	* src/draw-context.c (sp_pen_context_finish): Call parent method, fixes
	habit of crashing after using pen

2002-09-12  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/libnr/*: Started composing sensible library at last

	* src/document.c: Fix DTD typo

	* src/main.c (sp_main_gui): Moved setting LC_NUMERIC after gnome init
	(sp_main_console): Set LC_NUMERIC to "C" here too

2002-09-11  Lauris Kaplinski  <lauris@kaplinski.com>

	* configure.in: Version 0.26pre

	* src/display/Makefile.am (libspdisplay_a_SOURCES): Removed fill.[c,h] and stroke.[c,h]

2002-09-11  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/node-context.c (sp_node_context_item_handler): Do not
	select, if rubberband has been dragged

	* src/widgets/sp-menu-button.c (sp_menu_button_draw): Implement,
	draw small indication arrow here
	(sp_menu_button_expose): Ditto

	* src/helper/curve.c (sp_bpath_clean): New method
	(sp_curve_new_from_bpath): Clean bpath, if not good
	(sp_curve_new_from_static_bpath): Ditto
	(sp_curve_new_from_foreign_bpath): Ditto

	* src/macros.h: Some new macros

	* src/sp-object.c (sp_object_modified): Oops! Replaced '&&' with '&',
	this fixed super-slow rendering during drag bug

2002-09-10  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/selection-chemistry.c (sp_group_cleanup): Helper
	(sp_edit_cleanup): New method

	* src/path-chemistry.c (sp_path_cleanup): New method

	* src/draw-context.c (sp_draw_context_finish): Implement

	* src/seltrans.c (sp_sel_trans_ungrab): Do not set identity

	* src/sp-item-transform.c: Do not set identity transform

	* src/sp-text.c (sp_text_write_transform): Do not write identity

	* src/sp-rect.c (sp_rect_write_transform): Do not write identity

	* src/xml/repr.c (sp_repr_remove_listener_by_data): Oops, removed excess step

	* src/sp-shape.c (sp_shape_build): Force style rewrite for old versions

	* src/view.c (sp_view_widget_view_destroy): handler
	(sp_view_widget_set_view): Connect "destroy"

	* src/main.c (sp_do_export_png): Move exporting code here, implement
	--export-width, --export-height, --export-backround arguments

	* src/helper/nr-plain-stuff.c (nr_render_r8g8b8a8_r8g8b8a8_alpha): Implement
	using internal composer

	* src/sp-item.c (sp_item_paint): Render buffer instead of copy

2002-09-09  Masatake YAMATO  <jet@gyve.org>

	* src/sp-image.c (autotrace_dialog): Used 
	gtk_signal_connect_object_while_alive and 
	gtk_signal_connect_object instead of gtk_signal_connect_while_alive
	and gtk_signal_connect.
	(object_destroyed): Removed.
	(load_trace_result): ask the user whehter loading or net.

	* configure.in (AM_PATH_FRONTLINE): Check the version of frontline(>= 0.5.1).

2002-09-09  Zbigniew Chyla  <cyba@gnome.pl>

	* src/draw-context.c, src/dyna-draw-context.c, src/select-context.c,
	src/spiral-context.c, src/star-context.c,
	src/dialogs/tool-attributes.c, src/dialogs/tool-options.c,
	src/dialogs/xml-tree.c: Added <config.h>

2002-09-09  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/gradient-chemistry.c (sp_gradient_ensure_private_normalized): Normalize
	if flag is set, but hrefcount > 1
	(sp_item_force_fill_lineargradient_vector): Check for hrefcount
	(sp_item_force_stroke_lineargradient_vector): Ditto

	* src/interface.c: Added <config.h>

	* glade/toolbox.glade: Fixed non-ASCII character

2002-09-08  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/export.c (sp_export_do_export): Fixed affine

	* src/main.c (sp_main_console): Fixed affine

	* src/toolbox.c (sp_maintoolbox_create): Construct main window by hand

	* src/interface.c (sp_ui_main_menu): New method

	* src/help.c (sp_help_about): Use document width and height

	* src/svg-view.c (sp_svg_view_rescale): Use pixel coords
	(sp_svg_view_widget_size_request): Ditto

	* src/spiral-context.c (sp_spiral_context_config_widget): Implement
	(sp_spiral_context_setup): Ditto
	(sp_spiral_context_set): Ditto

	* src/star-context.c (sp_star_context_config_widget): Implement

	* src/desktop.c (sp_desktop_new): Use repr key for initial select context

	* src/select-context.c (sp_select_context_config_widget): Implement
	(sp_select_context_transform_toggled): Helper
	(sp_select_context_show_toggled): Ditto

	* src/display/nr-arena-shape.c (nr_arena_shape_update): Do not stroke,
	if width < 0.125

	* src/display/nr-arena-glyphs.c (nr_arena_glyphs_group_update): Use paintbox
	(nr_arena_glyphs_group_set_paintbox): New method
	(nr_arena_glyphs_update): Do not stroke if width < 0.125
	(nr_arena_glyphs_render): Do not render here
	(nr_arena_glyphs_fill_mask): New helper
	(nr_arena_glyphs_stroke_mask): Ditto
	(nr_arena_glyphs_group_update): Create painters here
	(nr_arena_glyphs_group_render): Render here

	* src/dialogs/tool-attributes.c (sp_tool_attributes_dialog_setup): Added
	SPSelectContext

	* src/dialogs/stroke-style.c (sp_stroke_style_paint_update): Use new gradient
	position widget logic
	(sp_stroke_style_paint_dragged): Ditto
	(sp_stroke_style_paint_changed): Ditto

	* src/dialogs/fill-style.c (sp_fill_style_widget_update): Use new gradient
	position widget logic
	(sp_fill_style_widget_paint_dragged): Ditto
	(sp_fill_style_widget_paint_changed): Ditto

	* src/sp-shape.c (sp_shape_show): Calculate and set paintbox
	(sp_shape_modified): Ditto

	* src/sp-gradient.c (sp_lineargradient_from_position): New method
	(sp_lineargradient_to_position): Ditto

	* src/sp-chars.c (sp_chars_print_bpath): Implement via nr plain buffers
	(sp_chars_set_paintbox): New method

	* src/seltrans.c (sp_sel_trans_shutdown): Destroy handles and canvasitems

	* src/seltrans.h: Added modifieable parameters

	* src/selection.c (sp_selection_bbox_document): New method

	* src/select-context.c (sp_select_context_set): Implement this

	* src/arc-context.c (sp_arc_finish): Oops, set sodipodi namespace

2002-09-07  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/style.c (sp_length_differ): Oops, if units differ check value

	* src/sp-paint-server.h: painter contructor signature change

	* src/display/nr-arena-shape.c: Remove group stuff
	(nr_arena_shape_set_paintbox): New method

	* src/display/nr-arena-shape.h: Remove group stuff

	* src/sp-object.c (sp_object_get_style_property): read presentation attr

	* src/sp-chars.c (sp_chars_style_modified): Use nr_arena_glyphs_group
	(sp_chars_show): Ditto
	(sp_chars_clear): Ditto
	(sp_chars_add_element): Ditto

	* src/sp-shape.c (sp_shape_modified): Set paintbox
	(sp_shape_style_modified): Use single nr_arena_shape
	(sp_shape_show): Ditto
	(sp_shape_remove_comp): Ditto
	(sp_shape_add_comp): Ditto

	* src/macros.h: Add total silencing

	* src/sp-gradient.c (sp_lineargradient_painter_new): Implement userSpaceOnUse
	except percentages (still not clear, what to do with those), but do
	bbox correctly

2002-09-06  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/text-edit.c (sp_text_edit_dialog_update_object): Generic method
	(sp_text_edit_dialog_set_default): New method
	(sp_text_edit_dialog_read_selection): Read defaults if no text
	(sp_text_edit_dialog_text_changed): Update default button
	(sp_text_edit_dialog_font_changed): Ditto
	(sp_text_edit_dialog_any_toggled): Ditto
	(sp_ted_get_selected_text_item): Helper

	* src/dialogs/tool-options.c (sp_tool_options_dialog_setup): Implement
	using sp_event_context_config_widget

	* src/event-context.h: Added ::config_widget virtual method

	* src/event-context.c (sp_event_context_config_widget): New method

	* src/dyna-draw-context.c (sp_dyna_draw_context_config_widget): new method

2002-09-05  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/stroke-style.c (sp_stroke_style_paint_construct): Handler
	(sp_stroke_style_paint_attr_changed): Ditto
	(sp_stroke_style_repr_get_style): Helper
	(sp_stroke_style_paint_update_repr): For SPRepr associated styles
	(sp_stroke_style_paint_changed): Write bare repr if needed
	(sp_stroke_style_line_construct): Handler
	(sp_stroke_style_line_attr_changed): Ditto
	(sp_stroke_style_line_update_repr): Alternate parser
	(sp_stroke_style_width_changed): Write repr if needed
	(sp_stroke_style_any_toggled): Ditto

	* src/dialogs/object-properties.c (sp_object_properties_dialog): build
	optionmenu for choosing between selection/tools

	* src/dialogs/fill-style.c (sp_fill_style_widget_new): Attach attr_changed
	(sp_fill_style_repr_get_style): Helper
	(sp_fill_style_widget_update_repr): Repr-associated version updater
	(sp_fill_style_widget_paint_changed): Write repr instead of item list if needed

	* src/widgets/sp-widget.c (spw_repr_attr_changed): Repr callback
	(sp_widget_new_global): Build from sodipodi
	(sp_widget_new_repr): Build from repr
	(sp_widget_construct_global): Constructor
	(sp_widget_construct_repr): Ditto

	* src/style.c (sp_style_new): New method
	(sp_style_read): Move evrything here
	(sp_style_read_from_object): Frontend
	(sp_style_read_from_repr): Ditto

2002-09-04  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-path.c (sp_path_build): Update SODIPODI-PATH-NODE-TYPES attribute

2002-09-03  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-text.c (sp_text_set_shape): Oooooooops, use MAX for bbox other corner

	* src/document.c (sp_document_new): Set docname attribute after build

	* src/sp-text.c (sp_text_find_version): Helper
	(sp_text_build): Build tspans etc. if 0.0 < version < 0.25

	* src/sp-ellipse.c (sp_arc_find_version): Helper
	(sp_arc_build): Per-version attributes
	(sp_arc_read_attr): Ditto

	* src/document.c (sp_document_new): Delay namespaces etc. to determine version
	(sp_document_new_from_mem): Ditto

	* src/document.h: Bring some members here

2002-09-02  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/stroke-style.c (sp_stroke_style_line_update): Make insensitive, if not stroked

	* src/sp-rect.c (sp_rect_write_transform): Adjust stroke width, if scale changes

	* src/sp-text.c: Port to SPSVGUnits

	* src/sp-root.c: Port to SPSVGLength, use pixels as basic units from now on

	* src/sp-rect.c: Port to SPSVGLength

	* src/sp-image.c: Port to SPSVGLength

	* src/sp-gradient.c: Port to SPSVGLength

	* src/sp-ellipse.c: Port to SPSVGLength

	* src/file.c (sp_do_file_print_to_printer): Fix px/pt ratio
	(sp_do_file_print_preview): Ditto

	* src/document.c (sp_document_width): Fix px/pt ratio
	(sp_document_height): Ditto
	(sp_document_new): Add sodipodi:version
	(sp_document_new_from_mem): Ditto

	* src/desktop.c (sp_desktop_init): Fix px/pt ratio in doc2dt matrix

	* src/svg/svg-length.c (sp_svg_length_read): New method
	(sp_svg_length_read_lff): Ditto
	(sp_svg_length_unset): Ditto

	* src/svg/svg-types.h: New file

	* src/dialogs/Makefile.am (libspdialogs_a_SOURCES): Added tool-options.[c,h]

2002-08-30  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-text.c (sp_text_set_shape): Do layouting here, so we can handle blocks

	* src/dialogs/text-edit.c (sp_text_edit_dialog): Layout radiobuttons
	(sp_text_edit_dialog_apply): Do layout
	(sp_text_edit_dialog_read_selection): Ditto

	* src/sp-text.c (sp_font_get_glyph_bbox): New helper
	(sp_font_get_glyph_advance): Ditto
	(sp_font_get_glyph_bbox_lr2tb): Ditto
	(sp_string_calculate_dimensions): Do vertical dimension correctly
	(sp_string_set_shape): Ditto

2002-08-29  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-text.c (sp_string_calculate_dimensions): New method

	* configure.in: Rewind required gnome-print version to 0.29

	* src/sp-object.h: Added viewport and user flags

	* src/style.c: Added functional 'text-anchor' property

	* src/style.h: Added functional 'text-anchor' property

	* src/svg/svg-color.c (sp_svg_read_color): Read rgb(r,g,b) variants

	* src/style.c: Created new IEnum type with immediate and computed members,
	ported font-style, font-variant, font-weight, font-stretch to it

	* src/sp-text.c (sp_string_set_shape): Use computed 'font-style' value

	* glade/Makefile.am (glade_DATA): Removed text-dialog.glade

	* src/dialogs/text-edit.c: Get rid of glade

2002-08-28  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/display/canvas-arena.c: Ref active item, so it does not disappear

	* src/style.c: Implement SPIFontSize and various helpers for it

	* src/sp-text.c: New font size type

	* src/sp-shape.c: 24-bit opacity scale

	* src/sp-item.c (sp_item_read_attr): Reread style for font-size

	* src/sp-image.c: 24-bit opacity scale

	* src/sp-chars.c: 24-bit opacity scale

	* src/gradient-chemistry.c: 24-bit opacity scale

	* src/file.c (sp_do_file_print_preview): Ensure up-to-date
	(sp_do_file_print_to_printer): Ditto

2002-08-27  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/export.c (sp_export_do_export): Fix affine (one more time)

	* src/sp-item.c (sp_item_paint): Ensure document is up-to-date

	* src/sp-chars.c (sp_chars_print_bpath): Use new transformed bpath bbox
	(sp_chars_bbox): Ditto

	* src/sp-path.c (sp_path_bbox): Use new transformed bpath bbox

	* src/helper/art-utils.c (sp_bpath_matrix_d_bbox_d_union): New method
	(sp_bpath_segment_bbox_d): Helper

2002-08-26  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/text-edit.c (sp_text_dialog_apply): Oops, set size, not some crap here

	* src/sp-chars.c (sp_chars_do_print): New direct method
	(sp_chars_print_bpath): Helper

	* src/gradient-chemistry.c (sp_item_repr_set_style_gradient): Set recursive

2002-08-25  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/text-context.c (sp_text_context_finalize): Do not use desktop here
	(sp_text_context_finish): Implement, release desktop stuff here

	* src/sp-text.c (sp_text_normalized_bpath): New method
	(sp_text_print): Implement, still needs SPChars method

	* src/sp-chars.c (sp_chars_normalized_bpath): New method

	* src/path-chemistry.c (sp_selected_path_to_curves): Convert the new text object

	* src/interface.c (sp_ui_file_menu): Use helpers, the right export dialog

	* src/draw-context.c (sp_pen_context_finish): Flush object
	(sp_pen_context_root_handler): Added 'BackSpace', should work OK now

	* src/event-context.c (sp_event_context_finish): New method and virtual method

	* src/desktop.c (sp_desktop_set_event_context): Finish eventcontext

	* src/helper/curve.c (sp_curve_backspace): New method

2002-08-24  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/helper/curve.c (sp_curve_append): Handle open/closed end and start

	* src/preferences-skeleton.h: Added pen tool, made AI style default

	* src/draw-context.c (sp_draw_context_setup): Set attach
	(sp_draw_context_root_handler): React to '+' key
	(spdc_set_attach): Set/clear append mode
	(spdc_attach_selection): Renamed
	(spdc_detach_selection): New method
	(spdc_reset_white): Only need white, not all colors
	(sp_pencil_context_root_handler): Destroy green anchor on release
	(sp_pen_context_setup): Handle "mode" attribute
	(sp_pen_context_set): Ditto
	(sp_pen_context_root_handler): Has now AI style (default) and click-click modes
	(spdc_pen_set_ctrl): Handle modes
	(spdc_pen_finish): New method

2002-08-23  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/sp-attribute-widget.h: It can now be attached to mere SPRepr too

	* src/dialogs/sp-attribute-widget.c (sp_attribute_widget_new_repr): New constructor
	(sp_attribute_widget_set_repr): New method
	(sp_attribute_table_new_repr): New constructor
	(sp_attribute_table_set_repr): New method

	* src/star-context.c (sp_star_context_set): Attribute reader
	(sp_star_context_setup): parse attributes

	* src/marshal.c (sp_marshal_NONE__STRING_BOOL): New method

	* src/interface.c (sp_ui_dialog_menu): Tool attributes menu

	* src/event-broker.c: Added event context node location

	* src/dyna-draw-context.c (sp_dyna_draw_context_set): Attribute reader
	(sp_dyna_draw_context_setup): Parse attributes

	* src/draw-context.h: Added selection member

	* src/view.c (sp_view_set_position): Frontend to virtual method
	(sp_view_set_status): Ditto

	* src/view.h: Added virtual methods for marking status and position

	* src/desktop.c (sp_desktop_widget_view_status_set): Moved status to
	parent container, where it belongs
	(sp_desktop_widget_view_position_set): Same for position
	(sp_desktop_widget_new): Listen status and position signals

	* src/dialogs/tool-attributes.c: New file

	* src/dialogs/tool-attributes.h: New file

2002-08-20  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dyna-draw-context.c: Removed control knot, as we do not attach to anything

	* src/xml/repr.c (sp_repr_unref): Implemented launching destroy listener

	* src/xml/repr-private.h: Added destroy listener

2002-08-19  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sodipodi.c (sodipodi_segv_handler): Do better names and inform user about these

	* src/selection-chemistry.c (sp_item_list_common_parent_group): Helper
	(sp_selection_raise): Made it to work with all item combinations
	(sp_selection_lower): Ditto, do not lower under non-items

	* src/sp-item-group.c (sp_group_order_changed): Fix item order calculation

2002-08-18  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/document-undo.c (sp_document_order_changed): Set correct action type

2002-08-17  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/selection-chemistry.c (sp_selection_ungroup): Use method from item group

	* src/sp-item-group.c (sp_item_group_ungroup): Preserve order and styles

	* src/style.c (sp_style_read_from_object): Synchronized with new style structure
	(sp_style_merge_property): Ditto
	(sp_style_merge_from_object_parent): Ditto
	(sp_style_merge_ipaint): Renamed
	(sp_style_write_string): New write semantics
	(sp_style_write_difference): New method
	(sp_text_style_write): New write semantics
	(sp_style_read_ifloat): Rename
	(sp_style_read_iscale30): Ditto
	(sp_style_read_ienum): Ditto
	(sp_style_read_istring): Ditto
	(sp_style_read_ipaint): Ditto
	(sp_style_write_ifloat): Signature, semantics and name change
	(sp_style_write_iscale30): Ditto
	(sp_style_write_ienum): Ditto
	(sp_style_write_istring): Ditto
	(sp_style_write_ipaint): Ditto
	(sp_paint_differ): Helper

	* src/style.h: Renamed inherited types, changed miterlimit to ifloat

	* src/color.c (sp_color_is_equal): New method

	* src/style.c (sp_style_merge_from_style_string): Accept (although warn)
	properties without end marker

	* src/dialogs/export.c (sp_export_do_export): Use correct transformation

	* src/main.c: Added command-line export functionality
	(main): Cleanup
	(sp_main_gui): Broke GUI-specific stuff here
	(sp_main_console): Same for console mode, implement export, use current dor for print

2002-08-16  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/toolbox.c (sp_maintoolbox_create): Moved draw toolbox to separate method
	(sp_toolbox_draw_set_object): Callback
	(sp_toolbox_draw_create): New method, create MenuButtons
	(sp_update_draw_toolbox): Use MenuButtons

	* src/event-broker.c: Added pen context, use pencil and pen instead of draw

	* src/draw-context.c: Break draw context into parent, pencil and pen

	* src/draw-context.h: Ditto

	* src/widgets/sp-menu-button.h: New file

	* src/widgets/sp-menu-button.c: New file, implement something similar to
	GtkOptionmenu, but with some sodipodi-specific sugar

	* glade/draw_pen.xpm: New file

	* src/draw-context.c (sp_draw_context_finalize): Destroy pen controls
	(sp_draw_context_setup): Setup pen controls
	(sp_draw_context_root_handler): Do pen stuff
	(spdc_pen_set_point): New helper
	(spdc_pen_set_ctrl): Ditto
	(spdc_pen_finish_segment): Ditto

	* src/helper/sp-ctrlline.c (sp_ctrlline_set_rgba32): New method

2002-08-15  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/toolbox.c (sp_update_draw_toolbox): Freehand keeps undo/redo sensitive now

	* src/document.c (sp_document_ensure_up_to_date): New method

	* src/draw-context.c (sp_draw_context_setup): Read selection data
	(sp_draw_context_root_handler): Use colors for freehand, place green anchor
	(spdc_selection_changed): Use read_selection
	(spdc_selection_modified): Ditto
	(spdc_read_selection): New method
	(spdc_add_freehand_point): Ditto
	(spdc_concat_colors_and_flush): Check, whehter green anchor exist, do contiguous append
	(fit_and_split): Use continious append
	(sp_draw_anchor_destroy): Signature change

2002-08-14  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/draw-context.c (sp_draw_context_destroy): Do not destroy start and end anchors
	(sp_draw_context_selection_modified): Save white curves in desktop coordinates
	(sp_draw_context_root_handler): Use state indicator, change addline modes on release
	(spdc_concat_colors_and_flush): Use continuous append
	(spdc_flush_white): Translate everything to item coordinates here

	* src/draw-context.h: Replace booleans with single state indicator

	* src/helper/curve.c (sp_curve_transform): New method
	(sp_curve_append_continuous): New method

2002-08-12  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/draw-context.c (spdc_finish_endpoint): Cleanup
	(spdc_flush_white): Do concat, create object if needed, do red->white transform if needed
	(spdc_clear_red_data): Helper

	* src/draw-context.h: Member rename

	* src/helper/curve.c (sp_curve_append): Append the whole curve, not just last segment
	(sp_curve_concat): Set lengths etc. correctly, fixes draw crash

2002-08-08  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/text-edit.c (sp_text_dialog_apply): Why there were strdups here?

	* src/style.c (sp_style_read_from_object): Cleanup font-family and font-size
	(sp_style_merge_property): Ditto
	(sp_style_merge_from_object_parent): Ditto
	(sp_text_style_write): Ditto
	(sp_style_read_inherited_float): New helper
	(sp_style_read_inherited_string): Ditto
	(sp_style_write_inherited_float): Ditto
	(sp_style_write_inherited_string): Ditto

	* src/sp-text.c (sp_text_set_repr_text_multiline): Set roles and line positions

2002-08-07  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-text.c (sp_text_read_attr): Request relayout
	(sp_text_child_added): Ditto
	(sp_text_remove_child): Ditto
	(sp_text_modified): Check, whether relayout is needed
	(sp_text_request_relayout): Helper

	* src/style.c (sp_style_merge_from_object_parent): Inherit font size (still wrong)

	* src/text-context.c (sp_text_context_root_handler): Allow control key
	to be passed, send nonbreaking space for Ctrl+Space

	* src/sp-text.c (sp_string_set_shape): Try to collect spaces across item boundaries
	(sp_tspan_set_shape): Ditto
	(sp_text_set_shape): Ditto

2002-08-05  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/text-context.c (sp_text_context_root_handler): Use sp_text_append

	* src/sp-text.c (sp_text_append): New method

2002-07-31  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/text-context.c (sp_text_context_finalize): Use it instead of ::destroy
	(sp_text_context_setup): Create cursor
	(sp_text_context_root_handler): Show cursor
	(sp_text_context_selection_changed): Update cursor
	(sp_text_context_timeout): Blink handler

	* src/text-context.h: Added cursor

2002-07-30  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/Makefile.am (sodipodi_SOURCES): Added macros.h

	* src/sp-text.c (sp_text_write_transform): Do multiline transforming
	the right way

	* src/macros.h: New file for useful macros

2002-07-29  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-text.c (sp_tspan_build): Get attributes at right place, read role as well
	(sp_tspan_read_attr): Parse "sodipodi:role" attribute
	(sp_text_append_line): New method

	* src/sp-text.h: Specify role for <tspan> element

2002-07-26  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-text.c (sp_string_set_shape): Changed signature, pass layout and currentpoint
	(sp_tspan_set_shape): New method
	(sp_text_build): Use normal order, as shape will be set asynchronously
	(sp_text_read_attr): Request update everywhere
	(sp_text_child_added): Fix bug, now keep old children in list
	(sp_text_set_shape): New method, nothing interesting yet

	* src/text-context.c (sp_text_context_selection_changed): Set active object
	to NULL, if nothing selected

2002-07-24  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/sp-object.c (sp_object_modified): Merge style with parent if needed,
	moved style_modified after signal

	* src/sp-text.c (sp_tspan_modified): Include style flag in cascade
	(sp_text_modified): Ditto
	(sp_string_modified): Re-enable it (although this is probably not correct)

	* src/style.c (sp_style_merge_from_object_parent): Merge writing mode

	* src/sp-item-group.c (sp_group_modified): Include style flag in cascade

	* src/sp-gradient.c (sp_gradient_modified): Include style flag in cascade

2002-07-22  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/style.c (sp_style_new_from_object): Renamed sp_style_new
	(sp_style_read_from_object): Use SP_SCALE30 for opacity, new paint structure
	(sp_style_merge_property): Ditto
	(sp_style_merge_from_object_parent): Renamed sp_style_merge_from_object,
	read only from immediate parent (which should have merged from ancestors itself)
	(sp_style_write_string): Use SP_SCALE30 for opacity, new paint structure
	(sp_style_clear): Ditto
	(sp_style_set_opacity): Ditto
	(sp_style_read_inherited_scale30): New method
	(sp_style_write_inherited_scale30): Ditto
	(sp_style_read_inherited_paint): Renamed, parse "inherit" value
	(sp_style_write_inherited_paint): Ditto, write it
	(sp_style_merge_inherited_paint): Do hunref here
	(sp_style_set_fill_color_rgba): Do hunref instead of gtk_object_unref, new structure
	(sp_style_set_fill_color_cmyka): Ditto
	(sp_style_set_stroke_color_rgba): Ditto
	(sp_style_set_stroke_color_cmyka): Ditto
	(sp_style_read_color_cmyk): Helper method here
	(sp_style_merge_from_style_string): Renamed method

	* src/style.h: Created new 30-bit scaled value type, used for opacity
	Renamed SPPaint to SPInheritedPaint

Sat Jul 13 19:47:16 2002 Davide Puricelli <evo@debian.org>

	* po/ja.po: Updated, thanks Junichi Uekawa <dancer@netfort.gr.jp>

Sat Jul 13 05:52:15 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/sp-item-group.c (sp_group_bbox): Fixed group selection bug -
	thanks to Ted Gould and his bug report.

2002-05-20  Lauris Kaplinski  <lauris@ximian.com>

	* src/xml/repr-io.c (sp_repr_svg_read_node): Add namespaces back -
	thanks to Pawel

	* src/dialogs/xml-tree.c: Complete refactoring by Pawel Palucha

	* src/document.c (sp_document_lookup_id): Check values

2002-04-21  Masatake YAMATO  <jet@gyve.org>

	* src/toolbox.c (sp_maintoolbox_open_files): Use 
	gnome_uri_list_extract_filenames.

	* src/interface.c (sp_ui_import_files): Ditto.

2002-04-19  Lauris Kaplinski  <lauris@ximian.com>

	* src/text-context.c (sp_text_context_root_handler): Port to new
	text object (incomplete)
	(sp_text_context_selection_changed): Ditto

	* src/sp-text.c: Lot of new stuff, shows something on screen at last

	* src/sp-object.c (sp_object_modified): Do not allow reentrancy
	- think SPText will like it

	* src/sp-item.c: Removed sp_item_update and virtual method

	* src/sp-item-group.c: Removed ::update method

2002-04-17  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-rect.c (sp_rect_rx_set): Make argument const, kill warning
	(sp_rect_ry_set): Ditto

2002-04-12  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-text.h: Broke into SPText, SPTSpan and SPString objects

	* src/sp-text.c (sp_text_build): Build <tspan> and TEXT elements

	* src/forward.h: Moved SPText and SPTSpan here

2002-04-08  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-item.h: Changed ::bbox signature

	* src/sp-item.c (sp_item_invoke_bbox): New generic method
	(sp_item_bbox_desktop): renamed old method

	* src/display/nr-arena-glyphs.c: Ditto

	* src/display/nr-arena-glyphs.h: New file

	* src/sp-chars.c (sp_chars_get_type): Change parent class
	(sp_chars_class_init): Ditto
	(sp_chars_destroy): New elements structure
	(sp_chars_style_modified): New virtual method
	(sp_chars_bbox): Ditto
	(sp_chars_show): Ditto
	(sp_chars_print): Ditto (not implemented)
	(sp_chars_clear): New structure
	(sp_chars_add_element): Ditto

	* src/sp-chars.h: Derive directly from item instead of shape

	* src/dialogs/align.c (sp_quick_align_arrange): New bbox logic

	* src/dialogs/export.c (sp_export_drawing): New bbox logic

Sun Apr  7 01:37:29 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/style.c: (sp_style_read_from_object): Fixed to work stroke-cmyk.

	* src/sp-item.c: (sp_item_read_attr): Ditto

2002-04-06  Lauris Kaplinski  <lauris@ximian.com>

	* src/xml/repr-io.c (sp_repr_read_file): Use new signature
	(sp_repr_read_mem): Ditto
	(sp_repr_qualified_name): New method
	(sp_repr_svg_read_node): Signature change, create text nodes

	* src/xml/repr-util.c (sp_xml_document_createTextNode): New method
	(sp_xml_document_createElement): Ditto
	(sp_xml_document_createElementNS): Ditto
	(sp_xml_node_get_Document): Ditto
	(sp_xml_element_setAttributeNS): Ditto

	* src/xml/repr.c (sp_repr_new_from_code): Set type

	* src/svg/svg-length.c (sp_svg_read_number_f): New method with right signature
	(sp_svg_read_number_d): Ditto

	* src/style.c (sp_style_privatize_text): New method
	(sp_style_merge_property): Moved text properties here

	* src/sp-text.c (sp_text_init): No properties
	(sp_text_build): No style anymore
	(sp_text_style_modified): New virtual method
	(sp_text_font_weight_to_gp): Helper
	(sp_text_font_italic_to_gp): Ditto
	(sp_text_set_shape): Use style properties, hackish support for vertical writing

	* src/sp-text.h: Removed properties from object, as these are handled by style

2002-04-04  Lauris Kaplinski  <lauris@ximian.com>

	* src/helper/canvas-bpath.c (sp_canvas_bpath_init): Can be filled now
	(sp_canvas_bpath_destroy): Ditto
	(sp_canvas_bpath_update): Ditto
	(sp_canvas_bpath_render): Ditto
	(sp_canvas_bpath_point): Ditto
	(sp_canvas_bpath_set_fill): New method
	(sp_canvas_bpath_set_stroke): Name change

	* src/display/nr-arena-shape.c (nr_arena_shape_render): No real_opacity
	anymore

	* src/sp-shape.c (sp_shape_print): No real opacity anymore

	* src/dyna-draw-context.c (sp_dyna_draw_context_setup): Port to
	canvas bpath instead of canvas shape
	(clear_current): Ditto
	(fit_and_split_line): Ditto
	(fit_and_split_calligraphics): Ditto
	(draw_temporary_box): Ditto

	* src/draw-context.c (sp_draw_context_setup): Port to new canvas bpath
	(fit_and_split): Ditto

	* src/dialogs/item-properties.c: Removed #ifdef 0 code

	* src/style.c (sp_style_new): Require object validity
	(sp_style_merge_property): Moved actual code to new method
	(sp_style_merge_from_string): Does not clear style anymore, thus name change
	(sp_style_paint_server_modified): Use sp_object_request_modified
	(sp_style_set_fill_color_rgba): Request modified
	(sp_style_set_fill_color_cmyka): Ditto
	(sp_style_set_stroke_color_rgba): Ditto
	(sp_style_set_stroke_color_cmyka): Ditto
	(sp_style_set_opacity): Ditto
	(sp_style_property_index): New enumerated property codes

	* src/sp-shape.c (sp_shape_style_modified): Renamed method

	* src/sp-item.c (sp_item_read_attr): Use sp_object_request_modified
	(sp_item_style_modified): Renamed method, otherwise same

	* src/sp-item-group.c (sp_group_class_init): No ::style_changed anymore

	* src/sp-object.c (sp_object_request_modified): Accept style modification
	flag (but not alone)
	(sp_object_modified): Ditto, invoke ::style_changed if needed

	* src/sp-object.h (SP_OBJECT_STYLE_MODIFIED_FLAG): New flag - we now
	collect style modifications into single-step async apply too

Sun Mar 31 19:09:25 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/sp-rect.c (sp_rect_*_set): Fixed a little.

2002-03-22  Davide Puricelli <evo@debian.org>

	* Updated debian/ directory, synced with Debian unstable.

2002-03-18  Lauris Kaplinski <lauris@ximian.com>

	* configure.in: Disabled frontline check, until I find time
	to make it to work without frontline too

2002-03-18  Masatake YAMATO  <jet@gyve.org, masata-y@maa.spacetown.ne.jp>

	* src/toolbox.h (sp_maintoolbox_drag_data_received): New
	declaration.

	* src/toolbox.c (sp_maintoolbox_open_one_file) 
	(sp_maintoolbox_open_files, sp_maintoolbox_drag_data_received): 
	New functions.
	(sp_maintoolbox_create): Invoked gtk_drag_dest_set 
	against ui.
	(toolbox_drop_target_info, toolbox_drop_target_entries,
	ENTRIES_SIZE, ntoolbox_drop_target_entries): New constants
	and macros for DnD.

	* src/interface.c (sp_ui_import_one_file, sp_ui_import_files) 
	(sp_ui_drag_data_received): New functions.
	(sp_create_window): sp_ui_drag_data_received is connected
	to "drag_data_received" of ui. Invoked gtk_drag_dest_set 
	against ui.
	(nui_drop_target_entries, ENTRIES_SIZE, ui_drop_target_entries,
	ui_drop_target_info): New constants and macros for DnD.

	* glade/toolbox.glade: sp_maintoolbox_drag_data_received is
	connected to drag_data_received of maintoolbox.

2002-03-18  Masatake YAMATO  <jet@gyve.org, masatake@maa.sst.ne.jp>

	* configure.in (ENABLE_AUTOTRACE): Check Frontline.

	* acconfig.h: Added ENABLE_AUTOTRACE.

	* src/sp-image.c: Added code that supports Frontline.
	New codes are wrapped by ENABLE_AUTOTRACE. 

Tue Mar 19 02:30:40 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* New SPRect rx, ry editing feature in node context.

	* src/sp-rect.c (sp_rect_rx_get): New method for KnotHolder
	(sp_rect_rx_set): Ditto
	(sp_rect_ry_get): Ditto
	(sp_rect_ry_set): Ditto
	(sp_rect_knot_holder): Ditto
	(sp_rect_write_repr): New method
	(sp_rect_glue_set_shape): Ditto

2002-03-14  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>

	* configure.in: Added "sk" to ALL_LINGUAS.

Sun Mar 10 21:00:01 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/document.c (sp_document_partial_items_in_box):
	New method. Return list of items, that the parts of the item
	containd in box.

	* select-context.h: Add button_press_shift attribute

	* select-context.c: (sp_select_context_root_handler):
	New feature to select items which is partially contained in
	rubberband box with shift key.

Wed Mar  6 01:52:09 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* Support open/closed arc feature. We can edit it on node edit.

	* src/sp-ellipse.c (sp_genericellipse_side): New method to
	determine point is inside or outside.
	(sp_arc_start_set): Add is_closed feature
	(sp_arc_end_set): Ditto

	* src/sp-ellipse.h: Add SPArc::is_closed attribute

	* src/preferences-skeleton.h: Modified arc style

	* src/arc-context.c: Ditto


2002-03-05  Lauris Kaplinski  <lauris@ximian.com>

	* src/display/nr-arena-shape.c (nr_arena_shape_pick): Use delta (tolerance)

	* src/display/canvas-arena.c (sp_canvas_arena_update): Use global delta (tolerance)
	(sp_canvas_arena_point): Ditto
	(sp_canvas_arena_event): Ditto

	* src/display/nr-arena-item.c (nr_arena_item_invoke_pick): Changed
	virtual method signature

	* src/dialogs/display-settings.c (sp_display_dialog_cursor_tolerance_changed): Implement
	(sp_display_dialog_new): Create pick tolerance spinbutton

	* src/view.c (sp_view_shutdown): New method and signal
	(sp_view_request_redraw): New virtual method

	* src/sodipodi.c (sodipodi_refresh_display): Use sp_view_request_redraw

	* src/interface.c (sp_ui_delete): Use sp_view_shutdown
	(sp_ui_menu_append_item): Helper
	(sp_ui_file_menu): New method
	(sp_ui_edit_menu): Ditto
	(sp_ui_selection_menu): Ditto
	(sp_ui_view_menu): Ditto
	(sp_ui_event_context_menu): Ditto
	(sp_ui_dialog_menu): Ditto
	(sp_ui_generic_menu): Ditto

	* src/file.c (sp_file_exit): Use sodipodi_exit method

	* src/event-context.c (sp_event_root_menu_popup): Use sp_ui_generic_menu

	* src/desktop.c (sp_desktop_request_redraw): New virtual method implementation
	(sp_desktop_widget_set_focus): Do that widget method instead

	* src/desktop-events.c (sp_dt_ruler_event): Do not use desktop->owner

	* src/Makefile.am (INCLUDES): -DSODIPODI_PIXMAPDIR

Mon Mar  4 01:23:05 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/sp-ellipse.c (sp_genericellipse_normalize): Fixed start and
	end arg conditions.
	(sp_arc_start_set): Added per pi/4 radian constraint with control key.
	(sp_arc_end_set): Ditto

Sun Mar  3 03:40:07 2002  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* Merged from ge-arc-branch

	* src/sp-ellipse.h (SPArc): New class

	* src/sp-ellipse.c (sp_arc_*): New methods

	* src/arc-context.c: New event context for SPArc. Mainly it is
	renamed from ellipse-context.c.
	So we should remove ellipse-context.c later.

	* src/arc-context.h: Ditto

	* glade/draw_arc.xpm: New pixmap file for draw arc tool.
	Now, we does not need draw_ellipse.xpm.

	* src/pixmaps/cursor-arc.xpm: Ditto

2002-02-25  Lauris Kaplinski  <lauris@ximian.com>

	* src/helper/curve.c (sp_curve_append): Do not requite non-empty curves

	* src/draw-context.c (fit_and_split): Commetn out boundary checks

	* src/document.c (sp_document_idle_handler): Bring up uncommited undo
	warning, if compiled with debug
	(sp_action_print_pending_list): Debug method
	(sp_document_warn_undo_stack): Ditto

	* src/document-private.h: Moved idel_id into base struct

2002-02-23  Lauris Kaplinski  <lauris@ximian.com>

	* src/helper/units.c (sp_points_get_units): New method
	(sp_units_get_points): Ditto

	* src/dialogs/object-properties.c: Made layout dynamic

	* src/document-undo.c (sp_document_private_done): New static method
	(sp_document_done): Just a wrapper
	(sp_document_maybe_done): Implement the real thing

	* src/document-private.h: Moved document definition here

2002-02-21  Lauris Kaplinski  <lauris@ximian.com>

	* src/dialogs/stroke-style.c (sp_stroke_style_any_toggled): Handle
	cap/join style changes
	(sp_stroke_style_widget_new): Create cap/join togglebuttons
	(sp_stroke_style_widget_update): Set cap/join selector activity
	(sp_stroke_style_set_join_buttons): New method
	(sp_stroke_style_set_cap_buttons): Ditto

2002-02-19  Lauris Kaplinski  <lauris@ximian.com>

	* src/dialogs/stroke-style.c: New file

	* src/dialogs/stroke-style.h: New file

	* src/helper/units.c (sp_distance_get_units): New method
	(sp_distance_get_points): Ditto

	* src/helper/units.h: Moved SPDistance here

	* src/style.h: Moved SPDistance to units.h

	* src/display/nr-arena-shape.c (nr_arena_shape_render): Render gradient
	strokes as well

	* src/dialogs/object-properties.c: Start rewriting to use dynamic
	fill/stroke widgets instead of original glade dialog

	* src/dialogs/stroke-style.h: New file

	* src/dialogs/stroke-style.c: New file

	* src/gradient-chemistry.c (sp_style_change_property): Reimplement,
	hopefully the correct way now

	* src/widgets/gradient-position.c (sp_gradient_position_update): Pre
	build local renderer here 

	* src/helper/nr-gradient.c (nr_lgradient_renderer_setup_r8g8b8a8): Do
	not allocate renderer, allow using static ones too
	(nr_lgradient_renderer_setup_r8g8b8): Ditto

	* src/widgets/paint-selector.c (sp_paint_selector_set_style_buttons): Do not
	activate pattern and fractal fill buttons

2002-02-18  Lauris Kaplinski  <lauris@ximian.com>

	* src/widgets/paint-selector.c: Lot of rearrangements everywhere -
	I am too tired to write all these down. Basically we have one frontend
	megawidget SPPaintSelector, that interfaces to colors, gradient and more.

2002-02-10  Lauris Kaplinski  <lauris@ximian.com>

	* src/desktop.c (sp_desktop_widget_destroy): Removed stale signal
	disconnect (no idea what it was originally for)

2002-02-09  Lauris Kaplinski  <lauris@ximian.com>

	* configure.in: Removed rbuf, frgba, new font checks and arena switch

	* src/sp-namedview.c (sp_namedview_setup_grid_item): Grid settings are
	always in points, units are there just for user preference
	(sp_namedview_read_attr): Ditto

	* src/desktop-snap.c (sp_desktop_horizontal_snap): Read snap distances
	from new desktop members
	(sp_desktop_vertical_snap): Ditto
	(sp_desktop_vector_snap): Ditto
	(sp_desktop_circular_snap): Ditto

	* src/desktop-handles.c (sp_desktop_canvas): Update to new desktop structure

	* src/sodipodi.c (sodipodi_activate_desktop_private): Default method
	implementation to chain activation signal on desktop
	(sodipodi_deactivate_desktop_private): Ditto

	* src/desktop.c (sp_desktop_new): Owner does not have document pointer
	any more, so had to change signature here
	(sp_desktop_widget_init): Moved activation signals to public constructor
	(sp_dtw_desktop_activate): Activation signal handler
	(sp_dtw_desktop_deactivate): Ditto
	(sp_desktop_widget_new): Use desktop "activate" and "deactivate" signals
	instead of sodipodi ones, signature change
	(sp_desktop_class_init): Added "activate" and "deactivate" signals

	* src/dialogs/display-settings.c: Removed glade, made mostly dynamic

	* src/sodipodi.c (sodipodi_remove_desktop): Emit "destroy_desktop" if
	destroyed one was not active too
	(sodipodi_refresh_display): Convenience method

2002-02-08  Lauris Kaplinski  <lauris@ximian.com>

	* src/dialogs/document-properties.c: Do not use glade anymore, made
	everything dynamic

	* src/helper/canvas-grid.c (sp_grid_hline): Use helpers from ctrlrect
	(sp_grid_vline): Ditto
	(sp_cgrid_render): Render real grid instead of dots

	* src/xml/repr-util.c (sp_repr_get_boolean): Saner conveninence method
	(sp_repr_get_int): Ditto
	(sp_repr_get_double): Ditto
	(sp_repr_set_boolean): Ditto
	(sp_repr_set_int): Ditto
	(sp_repr_set_double): Ditto

	* src/svg/svg-length.c (sp_svg_read_length): Added meter

	* src/dialogs/sp-attribute-widget.c (sp_attribute_widget_changed): Kill warning
	(sp_attribute_widget_set_object): Ditto
	(sp_attribute_widget_object_modified): Ditto
	(sp_attribute_table_set_object): Ditto
	(sp_attribute_table_object_modified): Ditto
	(sp_attribute_table_entry_changed): Ditto

	* src/dialogs/desktop-properties.c: Do not use glade anymore, made
	everything dynamic

	* src/sp-namedview.c (sp_namedview_init): Do not init distances here,
	as ::build invokes full reread anyways
	(sp_namedview_read_attr): Use saner structure and read measured distances
	(sp_namedview_setup_grid_item): Convert distances to points here
	(sp_str_to_bool): Convenience stuff (should be moved to some central place)
	(sp_nv_read_length): Ditto
	(sp_nv_read_opacity): Ditto

	* src/sp-namedview.h: Use real units for distances, some cleanup

	* src/desktop-snap.c (sp_desktop_horizontal_snap): Ported to namedview
	changed internals
	(sp_desktop_vertical_snap): Ditto
	(sp_desktop_vector_snap): Ditto
	(sp_desktop_circular_snap): Ditto

2002-02-04 Frank Felfe <innerspace@iname.com>

	* src/sp-item.c (sp_item_distance_to_svg_bbox): Fix compilation error

2002-02-03  Lauris Kaplinski  <lauris@ximian.com>

	* src/helper/units.c: Fix userspace/device confusion

	* src/sp-gradient.c (sp_stop_read_attr): Convert percentages to dimensionless
	units

	* src/gradient-chemistry.c (sp_gradient_vector_release_references): New
	method to prepare gradient vector for deletion

	* src/dialogs/gradient-vector.c (sp_gradient_vector_selector_init): Connect
	button dialogs
	(sp_gvs_rebuild_gui_full): Set selection to current active gradient
	(sp_gvs_gradient_edit_clicked): From old gradient selector
	(sp_gvs_gradient_add_clicked): Ditto
	(sp_gvs_gradient_delete_clicked): Ditto

2002-02-02  Kjartan Maraas  <kmaraas@gnome.org>

	* glade/object_props.glade: Fix a typo. s/Mitter/Miter/

2002-01-27  Lauris Kaplinski  <lauris@ximian.com>

	* src/bonobo/Makefile.am (INCLUDES): Remove excess -I

2002-01-21  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-item.c (sp_item_distance_to_svg_viewport): New method
	(sp_item_distance_to_svg_bbox): Ditto
	(sp_item_style_changed): Use generic distance conversion method

	* src/helper/units.c: New file, ported from libgnomeprint, we collect
	all unit management into here

	* src/helper/units.h: New file

	* src/svg/svg-length.c (sp_svg_write_percentage): New unit logic
	(sp_svg_read_length): Ditto

	* src/helper/unit-menu.c: Ported widget from libgnomeprint

	* src/helper/unit-menu.h: Ported widget from libgnomeprint

	* src/dialogs/text-edit.c (sp_text_read_selection): New unit logic

	* src/dialogs/object-properties.c (sp_object_properties_apply_stroke): New
	unit logic

	* src/dialogs/gradient-selector.c (sp_gradient_widget_new): Use
	SPGradientVectorSelector here

	* src/style.c (sp_style_read_from_string): New unit logic
	(sp_style_write_string): Ditto
	(sp_style_init): Ditto

	* src/sp-text.c (sp_text_read_attr): New unit logic

	* src/sp-star.c (sp_star_read_attr): New unit logic

	* src/sp-spiral.c (sp_spiral_read_attr): New unit logic

	* src/sp-shape-style.c (sp_stroke_read): New unit logic

	* src/sp-root.c (sp_root_read_attr): New unit logic

	* src/sp-rect.c (sp_rect_read_attr): New unit logic

	* src/sp-namedview.c (sp_namedview_read_attr): New unit logic

	* src/sp-item.c (sp_item_style_changed): New unit logic

	* src/sp-image.c (sp_image_read_attr): New unit logic

	* src/sp-ellipse.c (sp_circle_read_attr): New unit logic

	* src/dyna-draw-context.c (sp_dyna_draw_context_setup): New unit logic
	(fit_and_split_line): Ditto
	(fit_and_split_calligraphics): Ditto

	* src/desktop-events.c (sp_dt_simple_guide_dialog): Use new unit widget
	(guide_dialog_apply): Ditto

2002-01-13  Wang Jian  <lark@linux.net.cn>

	* configure.in(ALL_LINGUAS): Added zh_CN for Simplifed Chinese.

2002-01-05  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/helper/bezier-utils.c (BEZIER_DEBUG): inhibit debug messages.

2002-01-04  Zbigniew Chyla  <cyba@gnome.pl>

	* src/desktop.c (sp_desktop_widget_init, sp_desktop_widget_set_title,
	sp_desktop_widget_shutdown): Marked strings for translation.

	* src/document.c (sp_document_new, sp_document_new_from_mem): Ditto.

2002-01-01  Zbigniew Chyla  <cyba@gnome.pl>

	* configure.in: Added "AC_PROG_INTLTOOL(0.11)" line.

	* Makefile.am: Use intltool.

	* GNOME_Sodipodi.oaf.in: New, copied from GNOME_Sodipodi.oafinfo.

	* sodipodi.desktop.in: New, generated from sodipodi.desktop.

	* GNOME_Sodipodi.oafinfo, sodipodi.desktop: Removed.

	* glade/Makefile.am (glade_DATA): Removed *.c.

	* glade/*.c: Removed.

	* .cvsignore: Added intltool-*, sodipodi.desktop, GNOME_Sodipodi.oaf.

	* src/bonobo/svg-doc-factory.c, src/desktop.c, src/dialogs/align.c,
	src/dialogs/display-settings.c, src/dialogs/document-properties.c,
	src/dialogs/fill-style.c, src/dialogs/gradient-selector.c,
	src/dialogs/gradient-vector.c, src/dialogs/item-properties.c,
	src/dialogs/object-attributes.c, src/dialogs/object-properties.c,
	src/help.c, src/helper/unit-menu.c, src/main.c, src/sodipodi.c,
	src/sp-anchor.c, src/sp-image.c, src/sp-item-group.c, src/sp-rect.c,
	src/sp-shape.c, src/sp-spiral.c, src/sp-star.c, src/sp-text.c,
	src/widgets/sp-color-selector.c: Added missing #include <config.h>.

2001-12-30  Lauris Kaplinski  <lauris@localhost.localdomain>

	* src/widgets/sp-color-selector.c (sp_color_selector_adjustment_changed): Set
	updating flag here, so we get single "changed" signal whatever happens

	* src/sp-gradient.c (sp_gradient_repr_set_vector): Allow setting our
	own vector too here

	* src/sp-object.h (SP_OBJECT_NEXT): New macro

	* src/gradient-chemistry.c (sp_gradient_ensure_vector_normalized): Should
	work as intended now
	(sp_gradient_ensure_private_normalized): Ditto
	(sp_gradient_repr_set_link): Set NULL link too

2001-12-30  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/sp-spiral.c src/sp-star.c:
	Revert to previous cx, cy attribute implementation.
	Because SVG standard shape introduce cx, cy,
	so we coordinate to that policy.

	* src/sp-spiral.c (sp_spiral_get_polar): New function
	(sp_spiral_is_invalid): New function to protect attributes
	consistency. sp_spiral_read_attr use it.

2001-12-29  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/knotholder.c src/knotholder.h
	(sp_knot_holder_add_full): New method

	* src/sp-spiral.c: Removed cx, cy attribute,
	so we use item matrix for that.
	Fixed up debug code.

	* src/sp-star.c src/sp-star.h src/star-context.c:
	Removed cx, cy attribute

2001-12-29  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/knotholder.c (knot_moved_handler):
	Lauris found a incorrect invert matrix bug. I just fixed it.

2001-12-28  Simos Xenitellis  <simos@hellug.gr>

	* configure.in: Added "el" (Greek) to ALL_LINGUAS.

2001-12-28  Lauris Kaplinski  <lauris@localhost.localdomain>

	* src/sp-gradient.c: Lot of changes due to class member rearrangement
	(sp_gradient_repr_flatten_attributes): New method
	(sp_gradient_repr_set_vector): Ditto

	* src/sp-gradient.h: Moved gradientUnits and gradientTransform to
	base SPGradient class, added ::flatten_attributes virtual method

	* src/gradient-chemistry.c (sp_gradient_ensure_vector_normalized): Works
	now for lonely gradients as well

	* src/desktop-events.c (guide_dialog_apply): Flush undo
	(guide_dialog_delete): Ditto
	(sp_dt_guide_event): Ditto

	* src/widgets/sp-color-selector.c: Added 'rrggbbaa' hex value entry,
	use SPColor helpers instead of doing conversions here, added some
	generic color methods and renamed/changed signature of old ones.

	* src/widgets/sp-color-slider.c (sp_color_slider_paint): Update arrow
	the right way

	* src/helper/nr-plain-stuff.c (nr_render_rgba32_rgb): Use computed channels
	instead of plain color ones

	* src/helper/nr-plain-stuff-gdk.c (nr_gdk_draw_rgba32_solid): New method

	* src/text-context.c (sp_text_context_setup): Some XIM handling
	(sp_text_context_destroy): Ditto
	(sp_text_context_root_handler): Ditto

	* src/sp-gradient.c: Killed gcc 3 warnings

	* src/draw-context.c: Started rewriting of drawing context, added 4-member
	path cache (instead of 2 in old version), the goal is to make selection
	continuation and pen tool

	* src/draw-context.h: New members in class

	* src/color.c (sp_color_get_colorspace_class): Broke colorspace descriptor
	into class (process | spot) and type (rgb | cmyk), added new methods and
	renamed old one accordingly
	(sp_color_get_colorspace_type): Ditto
	(sp_color_rgb_to_hsv_floatv): Convenience method
	(sp_color_hsv_to_rgb_floatv): Ditto
	(sp_color_rgb_to_cmyk_floatv): Ditto
	(sp_color_cmyk_to_rgb_floatv): Ditto

	* src/color.h: New convenience macros and methods

	* configure.in (have_bonobo): Made --without-bonobo default

	* src/widgets/sp-color-preview.c: New file, implement simple
	color preview object, a la the one in Gtk+ color selector

	* src/widgets/sp-color-preview.h: New file

2001-12-21  Mitsuru Oka  <oka326@parkcity.ne.jp>

	* src/sp-spiral.*, spiral-context.c
	(sp_spiral_inner_*, sp_spiral_outer_*, sp_spiral_knot_holder):
	Add SPKnotHolder codes
	(sp_spiral_set_shape, sp_spiral_fit_and_draw):
	Fixed some drawing bugs

	* src/dyna-draw-context.*, sp-shape.c, sp-star.c:
	Clean up codes

2001-12-15  Lauris Kaplinski  <lauris@ximian.com>

	* src/helper/canvas-bpath.h: New file

	* src/helper/canvas-bpath.c: New file

	* src/helper/Makefile.am (libspchelp_a_SOURCES): Added
	canvas-bpath.[c,h]

	* src/helper/curve.c (sp_curve_ref): Signature change
	(sp_curve_unref): Ditto

	* src/display/Makefile.am (nr_sources): Removed stale files

	* src/helper/bezier-utils.c (sp_bezier_fit_cubic): Added argument
	checks, signature change, cleanup
	(sp_bezier_fit_cubic_r): Ditto
	(sp_bezier_fit_cubic_full): Ditto

	* src/helper/bezier-utils.h: Changed fit method signatures

	* src/draw-context.c (fit_and_split): Use new sp_bezier_fit signature

	* src/dyna-draw-context.c (fit_and_split_line): Use new sp_bezier_fit
	signature
	(fit_and_split_caligraphics): Ditto

2001-12-07  Lauris Kaplinski  <lauris@ximian.com>

	* src/sodipodi.c (sodipodi_application_new): Catch SIGFPE and SIGILL as well

	* src/sp-gradient.c (sp_gradient_write_colors): Skip, if integer stop
	values coincide (fixes div 0 bug with gradients)

2001-11-25 Duarte Loreto <happyguy_pt@hotmail.com>

	* Added Alvaro Lopes <alvieboy@alvie.com> portuguese translation to configure.in (ALL_LINGUAS)

01-11-19  Lauris Kaplinski  <lauris@ximian.com>

	* src/preferences-skeleton.h: Removed '%' from opacity

2001-11-12  Lauris Kaplinski  <lauris@ximian.com>

	* src/display/canvas-arena.c (sp_canvas_arena_render): Try to fit
	buffer, instead of just using 64x64 rectangles

	* src/sp-rect.c: Remove Gtk+ arguments

	* src/display/nr-arena-image.c (nr_arena_image_update): Request
	rendering previous area

2001-11-11  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-rect.c (sp_rect_write_transform): Scale rx and ry
	(sp_rect_menu): Implement
	(sp_rect_rect_properties): Implement

	* src/dialogs/object-properties.c (sp_object_properties_apply_fill): Use
	float value, not percentage
	(sp_object_properties_apply_stroke): Ditto

	* src/file.c (file_save_ok): Update relative image references

	* src/sp-image.c (sp_image_destroy): Unregister resource
	(sp_image_build): Register resource

	* src/sp-spiral.c (sp_spiral_menu): Implement
	(sp_spiral_spiral_properties): Generic attributes dialog

2001-11-10  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-anchor.c (sp_anchor_menu): New method
	(sp_anchor_link_properties): Ditto
	(sp_anchor_link_follow): Ditto
	(sp_anchor_link_remove): Ditto

	* src/sp-star.c (sp_star_menu): New method
	(sp_star_star_properties): Ditto

	* src/sp-item.c (sp_item_create_link): New method

	* src/sp-item-group.c (sp_item_group_ungroup): Ungroup anchors too

	* src/forward.h: Added SPAnchor

	* src/dialogs/sp-attribute-widget.h: New file, implement generic
	asynchronous attribute widget, and table of attribute widgets

	* src/dialogs/sp-attribute-widget.c: New file

	* src/dialogs/object-attributes.h: New file, implement generic
	asynchronous object attribute dialog

	* src/dialogs/object-attributes.c: New file

	* src/display/Makefile.am (INCLUDES): Added SODIPODI_CFLAGS

	* src/sp-anchor.c: New file, implement SVG <a> element. Actual event
	code is pure experimental and need some serious thinking.

	* src/sp-anchor.h: Ditto

	* src/svg-view.c (arena_handler): Forward arena events to SPEvents

	* src/sp-object-repr.c (sp_object_type_lookup): parse <a> as anchor

	* src/sp-item.h: Added ::event virtual method plus some test code

	* src/sp-item.c (sp_item_event): New method

	* src/desktop.c (sp_desktop_new): Moved drawing behind all other layers
	(sp_desktop_document_resized): Resize page frame

	* src/helper/sodipodi-ctrlrect.h: More complex structure to represent
	page frame as well

	* src/helper/sodipodi-ctrlrect.c (sp_ctrlrect_hline): New render method
	(sp_ctrlrect_vline): Ditto
	(sp_ctrlrect_area): Ditto
	(sp_ctrlrect_render): Use more complex structure
	(sp_ctrlrect_update): Ditto
	(sp_ctrlrect_set_area): New method
	(sp_ctrlrect_set_color): Ditto
	(sp_ctrlrect_set_shadow): Ditto

2001-11-09  Lauris Kaplinski  <lauris@ximian.com>

	* src/display/nr-arena-image.c (nr_arena_image_update): Implemented
	explicit geometry
	(nr_arena_image_set_geometry): New method

	* src/sp-image.c: Implemented "x", "y", "width", "height"
	(sp_image_read_attr): Ditto
	(sp_image_bbox): Ditto
	(sp_image_print): Ditto
	(sp_image_show): Ditto
	(sp_image_write_transform): Implement

	* src/file.c (file_import_ok): Try to load pixbuf and set
	"width" and "height" attributes

	* src/desktop.c: Some cleanups of View/Widget structure

	* src/desktop.h: Ditto

	* glade/Makefile.am (images): Added about.svg

2001-11-08  Lauris Kaplinski  <lauris@ximian.com>

	* src/svg/svg-affine.c (sp_svg_write_affine): Write scale and
	translate, if everything can be represented by these

	* src/sp-text.c (sp_text_write_transform): Implement

	* src/sp-rect.c (sp_rect_write_transform): Implement

	* src/sp-item.c (sp_item_write_transform): New class and virtual
	method pair, to allow object to optimize representation (i.e.
	rects can set x,y,width,height instead of just transformation

	* src/seltrans.c (sp_sel_trans_ungrab): Use sp_item_write_transform

	* src/selection-chemistry.c: Use sp_item_write_transform

	* src/help.c (sp_help_about): Set title string to "Sodipodi VERSION"

	* src/Makefile.am (INCLUDES): Define SODIPODI_VERSION

	* src/xml/repr-io.c (repr_write): Avoid newlines in content

	* src/view.c: Sorted out lot os signalling stuff

	* src/svg-view.c: Lot of work, basically works

	* src/sp-root.c (sp_root_modified): Call parent method as well

	* src/interface.c (sp_ui_new_view_preview): New method
	(sp_create_window): Sort out editable/non-editable views

	* src/help.c (sp_help_about): Create about maunally (not much here yet)

	* src/desktop.c: Use ::document_resized virtual method

2001-10-31  Lauris Kaplinski  <lauris@ximian.com>

	* src/dialogs/text-edit.c (sp_text_read_selection): Use gal
	utf8/editable methods
	(sp_text_dialog_apply): Ditto
	(sp_text_dialog_text_changed): Ditto

	* src/sp-text.c (sp_text_set_shape): Use correct utf8 methods

	* src/display/nr-arena-image.c (nr_arena_image_class_init): Use
	correct parent class

2001-10-31  Mitsuru Oka <oka326@parkcity.ne.jp>

	* src/knotholder.c:
	Removed unnecessary ref/unref.
	Added sp_object_invoke_write_repr() to reflect item changes to repr

	* src/sp-object.c: Added new virtual function SPObject::write_repr()

	* src/sp-object.h: Ditto

	* src/sp-shape.c (sp_shape_write_repr): Added

	* src/sp-star.c (sp_star_write_repr): Added.
	Moved subclass of SPShape to SPPolygon

	* src/star-context.c: Ditto

2001-10-30 Mitsuru Oka <oka326@parkcity.ne.jp>

	* src/knotholder.c: New file
	We can manage plural SPKnot in one SPKnotHolder.
	SPKnotHolder is created by SPItem::knot_holder virtual function.
	Moving SPKnot is propageted to another SPKnot.
	* src/knotholder.h: Ditto

	* src/node-context.c: Added SPKnotHolder
	* src/node-context.h: Ditto

	* src/sp-item.c: Added knot_holder virtual function.
	* src/sp-item.h: Ditto

	* src/sp-shape.c: Added set_shape virtual function.
	It is used to build bpath from extra shape attributes.

	* src/sp-shape.h: Ditto

	* src/sp-star.c: Added knot_holder and set_shape implementations.
	(sp_star_build_repr): Modified function name.
	* src/sp-star.h: Ditto

	* src/sp-spiral.c: Added set_shape implementation.
	(sp_spiral_build_repr): Modified function name.
	* src/sp-spiral.h: Ditto

	* src/star-context.c: Modified build_repr function name.
	* src/spiral-context.c: Ditto

2001-10-29  Lauris Kaplinski  <lauris@ximian.com>

	* src/desktop.c (sp_desktop_coordinate_status): Free allocated memory

	* src/display/nr-arena-shape.c (nr_arena_shape_group_add_component): Unref
	item once it is added

2001-10-29 Mitsuru Oka <oka326@parkcity.ne.jp>

	* src/desktop.c:
	Added gtk_object_unref() after *_add_child to fix memory leaks.

	* src/document: Ditto

	* src/selection-chemistry.c: Ditto

	* src/sp-item-group.c: Ditto

	* src/sp-clippath.c, src/sp-use.c: Ditto
	Missing to add ChangeLog before commiting.

2001-10-23  Mitsuru Oka <oka326@parkcity.ne.jp>

	* src/sp-star.*, src/sp-spiral.*, src/star-context.* and
	spiral-context.*:
	Add SPStar, SPStarContext, SPSpiral and SPSpiralContext classes.
	SPStar and SPSpiral behave as new shape and they can convert to
	bezier curves. More works are required.

	* glade/draw_star.xpm, glade/draw_spiral.xpm, src/pixmaps/cursor-star.xpm,
	src/pixmaps/cursor-spiral.xpm:
	Add toolbox icon and mouse cursor for star and spiral.

	* src/helper/bezier-utils.*:
	Add lowlevel APIs and reformat source code.

	* src/xml/repr-io.c:
	Fix repr_write() to generate more short SVG.
	New code support <foo /> tags generation.

	* src/xml/repr-util.c, src/xml/repr.*, src/sodipodi.c:
	Add new SPRepr APIs sp_repr_lookup_child(), sp_repr_overwrite (),
	and sp_repr_document_overwrite ()
	Now, we can merge ~/.sodipodi/preferences into preferences_skeleton.

2001-10-23  Lauris Kaplinski  <lauris@ximian.com>

	* src/file.c (sp_file_new): Use new signatures
	(file_open_ok): Ditto

	* src/interface.c (sp_create_window): New signature

	* src/desktop.c: Break desktop functionality into SPView/SPViewWidget
	parts, wrap most of the old code in ugly way, but we can go on
	cleaning it up method-by-method

	* src/desktop.h: Ditto

	* src/view.h: New file

	* src/view.c: New file, we implement abstract base classes for
	all document views (editable, noneditable, widget, non-widget)
	here

	* src/svg-view.h: New file

	* src/svg-view.c: New file, implementing SVG preview

	* src/marshal.h: New file

	* src/marshal.c: New file

2001-10-20  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-root.c (sp_root_read_attr): Removed desktop->document coordinate
	setup from here - it has to be done in desktop instead

2001-10-19  Frank Felfe <innerspace@iname.com>

	* src/widgets/sp-toolbox.*: patch from MenTaLguY <mental@rydia.net>
	change seperate button into toggle button and add arrow to 
	hide button indicating state of toolbox

	* src/path-chemistry.c (sp_selected_path_to_curves): apply to all paths in selection

	* src/selection-chemistry.c (sp_selection_delete): remove widget text

	* src/desktop.c (sp_desktop_set_focus): make canvas catch key events

	* src/desktop-events.c (sp_desktop_root_handler): don't grab focus here

2001-10-18  Lauris Kaplinski  <lauris@ximian.com>

	* src/display/nr-arena-image.c (nr_arena_image_render): Use right
	pixel coposers

	* configure.in: Version 0.25

2001-10-18  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-item-group.c: Removed paint virtual method implementation

	* src/sp-image.c: Ditto

	* src/sp-shape.c: Ditto

	* src/sp-use.c: Ditto

	* src/sp-item.c (sp_item_paint): Ported to NRArena/::show()

	* src/sp-item.h: Removed ::paint()

	* samples: Removed extra sample files (these are in clipart distribution)

2001-10-17  Lauris Kaplinski  <lauris@ximian.com>

	* src/display/nr-arena*: Merged NR_ARENA branch into HEAD.
	NRArena is new experimental display list engine, that replaces
	most canvas stuff for SVG items (old canvas code is still
	used for controls etc.).
	It is less integrated with Gtk widgetry, and should also allow reuse
	of code for paint-server type things (patterns, symbols etc.).
	NRArena rendering also allows higher-level graphic stuff, from
	masking to filters, to be implemented.

2001-10-13  Mitsuru Oka <oka326@parkcity.ne.jp>

	* src/dynadraw-context.c: Removed rotating brush bug

	* src/draw-context.h: Removed duplicate bezier-fitting code

2001-10-12  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-clippath.c: New file

	* src/sp-clippath.h: New file

	* src/sp-object-group.c (sp_objectgroup_build): Check child type
	(sp_objectgroup_child_added): Ditto

	* src/sp-object-group.h: Removed useless 'tranparent' member

2001-10-07  Lauris Kaplinski  <lauris@ximian.com>

	* src/display/nr-primitives.c (nr_irect_union): New method

	* src/helper/nr-buffers.h: New file

	* src/helper/nr-buffers.c: New file

	* src/helper/nr-plain-stuff.c (nr_render_rgba32_rgba32): New method

2001-10-06  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-item.c (sp_item_read_attr): Query presentation attributes

	* src/style.c (sp_style_read_from_object): Added some presentation attributes

2001-10-05  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-use.c (sp_use_build): Reinclude, change 'href' to 'xlink:href'

	* src/sp-object.c (sp_object_style_changed): Use SP_OBJECT_MODIFIED_FLAG

	* src/document.c (sp_document_new): Force "height" and "width" attributes,
	if not present already
	(sp_document_new_from_mem): Ditto

2001-10-04  Lauris Kaplinski  <lauris@ximian.com>

	* src/xml/repr-io.c (sp_repr_save_stream): Correct header

2001-10-02  Peter Moulder <pmoulder@csse.monash.edu.au>

	* src/xml/repr-io.c (repr_quote_write): New method, quotes
	special chars correctly for xml
	(repr_write): Use repr_quote_write

2001-10-02  Lauris Kaplinski  <lauris@ximian.com>

	* src/dyna-draw-context.c: Stroking by Mitsuru Oka

	* src/helper/bezier-utils.h: New file by Motsuru oka

	* src/helper/bezier-utils.c: Ditto

	* src/sp-shape.c (sp_shape_print): Translate gradients the right way

2001-10-01  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-shape.c (sp_shape_print): Use rule for clip and fill
	(sp_shape_paint): Use winding rule

2001-09-30  Lauris Kaplinski  <lauris@ximian.com>

	* src/style.c (sp_style_write_string): Write rule
	(sp_style_read_from_string): Parse rule

	* src/style.h: Made rule libart enum

	* src/display/path-archetype.c (sp_path_at): Search by rule
	(sp_path_at_new): Rewind with rule
	(sp_pat_equal): Compare rules

	* src/display/path-archetype.h: Added rule argument

	* src/display/cpath-component.c (sp_cpath_comp_new): Init rule
	(sp_cpath_comp_update): Use rule
	(sp_cpath_comp_change): Ditto

	* src/display/cpath-component.h: Added rule member

	* src/display/canvas-shape.c (sp_canvas_shape_update): Set fill rule

2001-09-29  Lauris Kaplinski  <lauris@ximian.com>

	* src/selection-chemistry.c (sp_selection_lower_to_bottom): Do not lower
	behind non-items (i.e. base <defs> object)
	(sp_selection_lower): Ditto

	* configure.in: Version 0.24.1

	* src/document.c (sp_document_new): Set xmlns:xlink
	(sp_document_new_from_mem): Ditto

	* src/sp-defs.c (sp_defs_destroy): Correct list emptying

	* src/dialogs/gradient-selector.c (sp_gradient_selector_add_vector_clicked): unref repr

	* src/gradient-chemistry.c (sp_object_ensure_fill_gradient_normalized): unref repr

	* src/helper/art-utils.c (art_rgb_run_rgba): Fix 255/256 bug

	* src/display/canvas-shape.c (sp_canvas_shape_render): Removed #ifdef 0 code

	* src/widgets/gradient-image.c (sp_gradient_image_expose): Draw grabage
	using fresh new nr functions
	(sp_gradient_image_update): Ditto (not used)

	* src/helper/nr-plain-stuff.h: New file

	* src/helper/nr-plain-stuff.c: New file

	* src/helper/nr-plain-stuff-gdk.h: New file

	* src/helper/nr-plain-stuff-gdk.c: New file

2001-09-27  Lauris Kaplinski  <lauris@ximian.com>

	* src/dialogs/object-properties.c (sp_object_properties_dialog): Create
	dynamic fill page

	* src/sp-shape.c (sp_shape_print): Print gradients (somewhat)
	(sp_shape_paint): Paint gradients (somewhat)

	* src/document.c (sp_document_new_from_mem): Use fresh namespace

	* src/xml/repr-io.c (sp_repr_save_stream): Write fresher descriptor

	* src/widgets/gradient-position.c: New file and widget

	* src/widgets/gradient-position.h: New file and widget

	* src/dialogs/gradient-selector.c (sp_gradient_widget_new): Make
	delete vector inactive, shorter button names, create gradient
	positioning widget
	(sp_gradient_selector_load_selection): Update positioning widget
	(sp_gradient_selection_position_dragged): Implement
	(sp_gradient_selection_position_changed): Implement

	* src/sodipodi.c (sodipodi_segv_handler): Abort on recursion

2001-09-26  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-text.c (sp_text_read_attr): Use unit-loading method for x & y

2001-09-25  Christopher R. Gabriel  <cgabriel@cgabriel.org>

	* sodipodi.1.in: new man page
	* configure.in: Likewise
	* Makefile.am (man_MANS): Likewise

2001-09-24 Frank Felfe <innerspace@iname.com>

	* src/helper/sodipodi-ctrl.*: New ctrl-shapes

	* src/knot.*: Ditto

	* src/pixmaps/cursor-node-d.xpm: New file

	* src/pixmaps/cursor-node-m.xpm: New file

	* src/pixmaps/cursor-select-d.xpm: New file

	* src/pixmaps/cursor-select-m.xpm: New file

	* src/pixmaps/handles.xpm: New file

	* src/sp-cursor.* (sp_cursor_new_from_xpm): New function

	* src/seltrans.c: Use new ctrl-shapes and cursors

	* src/seltrans-handles.*: Use new ctrl-shapes 

	* src/select-context.c (sp_node_context_class_init): Init cursors and handle pix

	* src/nodepath.* (node_event): Redirect key events
	(node_key): New key handler
	(sp_node_selected_break): Handle first and last node
	(node_ctrl_moved): Update ctrlline after setting coords
	(sp_nodepath_node_new): Use new ctrl-shapes and cursors

	* src/node-context.c (sp_node_context_class_init): Init cursors

2001-09-22  Mitsuru Oka <oka326@parkcity.ne.jp>

	* src/dynadraw-context.c: New file

	* src/dynadraw-context.h: New file

	* src/event-context.c (sp_event_context_set_dynahand): New handler

2001-09-21  Lauris Kaplinski  <lauris@ximian.com>

	* src/svg/svg-path.c: Quick port of latest librsvg path code

2001-09-19  Lauris Kaplinski  <lauris@ximian.com>

	* src/document.c (sp_document_destroy): Remove document
	(sp_document_new): Add document
	(sp_document_new_from_mem): Ditto

	* src/sodipodi.c (sodpodi_remove_document): New method
	(sodpodi_add_document): Ditto
	(sodipodi_segv_handler): Not very intelligent signal handler

2001-09-18  Lauris Kaplinski  <lauris@ximian.com>

	* src/dialogs/gradient-selector.c (sp_gradient_selector_add_vector_clicked): 
	New handler
	(sp_gradient_selector_delete_vector_clicked): Ditto (empty)
	(sp_gradient_selector_load_selection): New method

	* src/desktop.c (sp_desktop_init): Typo fix

2001-09-17  Lauris Kaplinski  <lauris@ximian.com>

	* src/dialogs/gradient-vector.c (sp_gradient_vector_widget_destroy): Handler
	(sp_gradient_vector_gradient_destroy): Ditto
	(sp_gradient_vector_gradient_modified): Ditto
	(sp_gradient_vector_color_dragged): Ditto
	(sp_gradient_vector_color_changed): Ditto
	(sp_gradient_vector_widget_load_gradient): Connect/disconnect signals,
	handle NULL gradient etc.

	* src/sp-gradient.c (sp_gradient_set_vector): New method

	* src/widgets/gradient-image.c (sp_gradient_image_update): New method
	(sp_gradient_image_gradient_modified): Handler
	(sp_gradient_image_gradient_destroy): Ditto
	(sp_gradient_image_set_gradient): New method
	(sp_gradient_image_unrealize): Implement
	(sp_gradient_image_realize): Ditto

2001-09-16  Lauris Kaplinski  <lauris@ximian.com>

	* src/dialogs/gradient-selector.c (sp_gradient_widget_new): Added buttons
	(sp_gradient_selector_edit_vector_clicked): Handler

	* src/sp-defs.c (sp_defs_build): Use attach method

2001-09-15  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-gradient.c: Added radial gradient

	* src/sp-gradient.h: Ditto

	* src/sp-paint-server.c (sp_paint_server_destroy): Do not leak painters

	* src/gradient-chemistry.c (sp_gradient_ensure_vector_normalized): New method
	(sp_item_force_fill_lineargradient_vector): Ditto

	* src/sp-object.h (SP_OBJECT_STYLE): New macro

2001-09-14  Lauris Kaplinski  <lauris@ximian.com>

	* src/zoom-context.c (sp_zoom_2_to_1): Noop if no active desktop
	(sp_zoom_1_to_2): Ditto

2001-09-07  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-header.c: New file, implements document header, consisting
	of nested <defs> nodes, for different resource definitions

	* src/sp-header.h: New file

	* src/forward.h: Added SPHeader forward typedefs

2001-09-05  Lauris Kaplinski  <lauris@ximian.com>

	* src/document.c (sp_document_del_repr): Moved here, commented out
	(sp_document_add_repr): Moved here, made non-item compatible

	* src/style.c (sp_style_object_destroyed): Catcher method
	(sp_style_new): Signature change
	(sp_style_ref): Ditto
	(sp_style_unref): Ditto

	* src/sp-paint-server.c (sp_paint_server_destroy): Removed insane
	paint server referencing by painters and replaced it witw (a bit)
	less insane stale painter maintenance
	(sp_paint_server_painter_new): Ditto
	(sp_paint_server_painter_free): Ditto
	(sp_painter_free): Ditto
	(sp_painter_stale_fill): Ditto

	* src/sp-object.c (sp_object_invoke_build): Added verbose error

	* src/style.c (sp_style_paint_server_destroy): Implemented signal-based
	paintserver spying, instead of hardrefing it
	(sp_style_paint_server_changed): Ditto
	(sp_style_merge_paint): Ditto

	* src/sp-object.c (sp_object_ref): Wrapper method for debugging
	(sp_object_unref): Ditto
	(sp_object_attach_reref): Convenience connect method
	(sp_object_detach_unref): Ditto

2001-09-04  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-shape.c (sp_shape_print): Do not fill open paths

	* src/document.c (sp_document_add_resource): Implemented simple
	named resource lists
	(sp_document_remove_resource): Ditto
	(sp_document_get_resource_list): Ditto

2001-09-03  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-gradient.c: Added middle SPGradient class and morphed
	LinearGradient accordingly

	* src/sp-gradient.h: Added middle SPGradient Class

	* src/forward.h: Declare stops and gradients here

	* src/dialogs/gradient-vector.c: New file

	* src/dialogs/gradient-vector.h: New file

	* src/bonobo/embeddable-document.c (sp_embeddable_document_ps_save):
	Kill warning

	* src/select-context.c: Kill warning

2001-08-31  Lauris Kaplinski  <lauris@ximian.com>

	* src/forward.h: typedef SPDefs[Class] here

	* src/sp-root.h: Added pointer to root-level <defs> node

	* src/sp-gradient.c (sp_stop_get_type): Fixed type on type init

2001-08-30  Lauris Kaplinski  <lauris@ximian.com>

	* src/document.c (sp_document_new): Use fill-opacity 0.5, not 50%

2001-08-21  Lauris Kaplinski  <lauris@ximian.com>

	* src/dialogs/fill-style.c: Implement CMYK/RGB colorspace switching

	* src/widgets/sp-color-selector.c: Implement CMYK read/set methods

	* src/widgets/sp-color-slider.c (sp_color_slider_adjustment_value_changed): Set
	local value, even if arrow is not visible

	* src/color.c: New file

	* src/color.h: New file

	* src/sp-item.c (sp_item_read_attr): Check for "fill-cmyk"

	* src/style.c (sp_style_read_from_object): Parse "fill-cmyk" (quick hack)

2001-08-20  Lauris Kaplinski  <lauris@ximian.com>

	* src/svg/svg-path.c (svg_parse_path_data): Kill warning

	* src/widgets/sp-color-selector.c: New file & class

	* src/widgets/sp-color-slider.c: New file & class

	* src/sp-object.c (sp_object_style_changed): New virtual method

2001-08-13  Lauris Kaplinski  <lauris@ximian.com>

	* src/selection-chemistry.c (sp_selection_copy): Use prepend/reverse
	(sp_item_compare_order): New method
	(sp_item_list_sort_by_visual_order): New method

	* src/sp-path.c (sp_path_read_attr): Req modification

	* src/sp-item.c (sp_item_toggle_sensitivity): Call document::done
	(sp_item_reset_transformation): Ditto
	(sp_item_read_attr): Request modifiaction for style change

	* src/sp-object.h (SP_OBJECT_PARENT): Added convenience macros

2001-08-01  Lauris Kaplinski  <lauris@ximian.com>

	* src/document-undo.c (sp_document_undo): Fresh logic
	(sp_document_redo): Ditto
	(sp_document_child_added): Real listener
	(sp_document_child_removed): Ditto
	(sp_document_attr_changed): Ditto
	(sp_document_content_changed): Ditto
	(sp_document_order_changed): Ditto
	(sp_document_add_repr): Fresh logic, use only as wrapper
	(sp_document_del_repr): Ditto
	(sp_document_clear_undo): Use new logic, free actions at last
	(sp_document_clear_redo): Ditto
	(sp_action_list_undo): New functions, plus handful children
	(sp_action_list_redo): Ditto
	(sp_action_new): New function
	(sp_action_free): Ditto
	(sp_action_free_list): Ditto

2001-07-31  Lauris Kaplinski  <lauris@ximian.com>

	* src/xml/repr.c (sp_repr_ref): Return referenced repr
	(sp_repr_unref): Ditto
	(sp_repr_duplicate): Cleanup
	(sp_repr_set_content): Ditto, new handler signatures

	* src/xml/repr-private.h: Lot of signature changes

2001-07-30  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-item-group.c: #include <config.h> for i18n

	* src/sp-item.c: Ditto

	* src/event-context.c: Ditto

	* src/toolbox.c: Ditto

2001-07-25  Lauris Kaplinski  <lauris@ximian.com>

	* src/document-undo.c (sp_document_maybe_done): New function

2001-07-19  Lauris Kaplinski  <lauris@ximian.com>

	* src/dialogs/sp-widget.c (sp_widget_modify_selection): New function
	(sp_widget_show): Connect "modify_selection"
	(sp_widget_hide): Disconnect by data
	(sp_widget_new): New function
	(sp_widget_class_init): Added signals
	(sp_widget_change_selection): Emit signal
	(sp_widget_set_selection): Ditto

	* src/sodipodi.c (sodipodi_selection_modified): New function
	(sodipodi_class_init): Added "modify_selection" signal

	* src/selection.c (sp_selection_idle_handler): Signal sodipodi

	* src/document.c (sp_document_class_init): Added "modified" signal
	(sp_document_idle_handler): Emit modified signal

	* src/seltrans.c (sp_sel_trans_sel_modified): New function

	* src/sp-item.c (sp_item_set_item_transform): New function

	* src/sp-object.c (sp_object_class_init): Add "modified" signal
	(sp_object_request_modified): New function
	(sp_object_modified): New base method

	* src/sp-object.h (SP_OBJECT_UNSET_FLAGS): Added modifiaction state flags
	and handlers for scheduling and emitting modifiaction signal

	* src/selection.c (sp_selection_class_init): Added "modified" signal
	(sp_selection_destroy): Remove pending idle, if present
	(sp_selection_selected_item_modified): Added handler for object signal
	(sp_selection_idle_handler): Emit our own modified signal in idle loop

	* src/selection.h: Added idle id and ::modified virtual member

2001-07-17  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-namedview.c (sp_namedview_get_name): Initialize exception

	* src/sp-item-group.c (sp_item_group_ungroup_activate): New function
	(sp_item_group_ungroup): Implement this

	* src/sp-item.c (sp_item_select_this): New function
	(sp_item_private_menu): Added "Select this"
	(sp_item_properties): Select item

	* src/desktop.c (sp_desktop_menu_popup): Use new signature

	* src/event-context.c (sp_event_root_menu_popup): Use desktop
	in signature instead of widget

	* src/sp-object.c (sp_object_getAttribute): Return NULL, if
	exception is not clear
	(sp_object_setAttribute): Ditto
	(sp_object_removeAttribute): Ditto

2001-07-08  Lauris Kaplinski  <lauris@ximian.com>

	* src/xml/repr-io.c (sp_repr_svg_read_node): Preserve namespaces for
	everything but "svg"

2001-07-07  F.J.Franklin  <F.J.Franklin@sheffield.ac.uk>

	* src/svg/svg-color.c (sp_svg_read_color): Accept ';' as
	terminator

	* src/sp_image.c (sp_image_repr_read_dataURI): New function
	(sp_image_repr_read_b64): New function
	(sp_image_read_attr): Accept embedded data

	* configure.in: Added --with-libwmf switch

	* src/xml/repr-io.c (sp_repr_read_file): Read *.wmf using libwmf
	(sp_wmf_convert): New function
	(sp_wmf_image_name): New function

2001-07-07  Frank Felfe  <innerspace@iname.com>

	* src/desktop.h: Added number field

	* src/desktop.c (sp_desktop_new): Initialize number from
	namedview viewcount
	(sp_desktop_set_title): Compose name from uri, nameview and number

	* src/document.c (sp_document_set_uri): New method

	* src/file.c (file_save_ok): Set ducument uri

	* src/interface.c (sp_create_window): Set desktop title

	* src/select-context.c (sp_select_context_root_handler): Added
	backward cycling

	* src/selection-chemistry.c (sp_selection_item_next): Cleared
	list mess
	(sp_selection_item_prev): New function

	* src/sp-item-group.c (sp_item_group_item_list): New function

	* src/sp-namedview.h: Added viewcount field

	* src/sp-namedview.c (sp_namedview_get_name): New method

	* doc/keybindings.txt: Added Shift-Tab

2001-06-07  Lauris Kaplinski  <lauris@ximian.com>

	* configure.in: Version 0.24

	* src/sp-item.c (sp_item_read_attr): Quick noscale hack
	for style stroke widths

	* src/display/canvas-shape.c (sp_canvas_shape_update): Use
	stroke_width as well ;)

2001-05-24  Lauris Kaplinski  <lauris@ximian.com>

	* src/seltrans-handles.*: Make structs const

	* src/seltrans.*: Make view type variable, move it to
	header for adding GUI later

2001-05-23  Frank Felfe  <innerspace@iname.com>

	* src/desktop-snap.*: Implement circualr and list snapping

	* src/sp-item.*: New virtual function ::snappoints()

	* src/seltrans.c: New structure

	* src/sp-rect.c (sp_rect_snappointss): Implement

	* src/sp-ellipse.c (sp_ellipse_snappoints): Ditto

	* src/sp-text.c (sp_text_snappoints): Ditto

	* src/sp-image.c (sp_image_snappoints): Ditto

2001-05-18  Lauris Kaplinski  <lauris@ximian.com>

	* configure.in: Version 0.23 final

	* src/sp-gradient.c (sp_lg_fill): Do opacity

	* src/document-undo.c (sp_document_redo): Fixed bug in redoing
	order changes

2001-05-17  Lauris Kaplinski  <lauris@ximian.com>

	* src/toolbox.c (sp_maintoolbox_create): Show toolbox, if
	it already exists and reference sodipodi
	(sp_maintoolbox_close): Hide toolbox

	* glade/Makefile.am (glade_DATA): Added item.glade, item.c

	* configure.in: Version 0.23

	* src/dialogs/display-settings.h: New file

	* glade/Makefile.am (glade_DATA): Added display.glade, display.c

2001-05-06  Lauris Kaplinski  <lauris@ximian.com>

	* configure.in (use_arena): Added with-arena flag

	* acconfig.h: Added ARENA

2001-04-16  Jesus Bravo Alvarez  <jba@pobox.com>

	* configure.in: Added gl (Galician) to ALL_LINGUAS

2001-04-14  Lauris Kaplinski  <lauris@ximian.com>

	* everywhere (TM): Changed the basic structure of Reprs (they are
	not GtkObjects any more) and SPObjects (they have own list sequence
	instead of using GLists)

2001-04-06  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-item-group.c (sp_item_group_ungroup): New method

	* src/draw-context.c (set_to_accumulated): Transform path instead of
	setting initial transform, so clear transform does not do interesting
	things for freehand curves ;-)

2001-04-04  Lauris Kaplinski  <lauris@ximian.com>

	* src/file.c (sp_file_open): Do not connect "delete_event"
	(sp_file_save_as): Ditto
	(sp_file_import): Ditto, do not use static widget pointer
	(sp_file_export): Ditto
	(sp_file_save_document): Clear "modified" attribute
	(file_save_ok): Ditto

	* src/svg/svg.h: #include glib.h instead of full gtk.h

	* src/svg/svg-stroke.c: #include string.h, kill warning

	* src/svg/svg-font.c: Ditto

	* src/sp-shape-style.c: Ditto

	* src/sp-metrics.h: #include gtkruler.h intead of full gtk.h

	* src/zoom-context.c (sp_zoom_page): Get document from desktop
	instead of using ACTIVE_DOCUMENT

	* src/slide-context.c: New file, implement slideshow context

	* src/main.c (main): Create slideshow, if requested

2001-03-22  Lauris Kaplinski  <lauris@ximian.com>

	* src/svg/Makefile.am (INCLUDES): Add SODIPODI_CFLAGS

2001-03-21  Lauris Kaplinski  <lauris@ximian.com>

	* src/sodipodi.h: Remove Sodipodi typedef

	* src/forward.h: Typedef Sodipodi here

	* src/dialogs/sp-widget.c: New file

	* src/dialogs/sp-widget.h: New file, implement abstract base class for
	configuration widgets

	* glade/Makefile.am (pixmaps): Added guide_dialog.png

	* src/dialogs/document-properties.c (sp_document_dialog_delete): New function, or
	we crash if user closes dialog

	* src/dialogs/desktop-properties.c (sp_desktop_dialog_delete): New function, or
	we crash if user closes window

	* src/draw-context.c (sp_draw_context_root_handler): Do not crash for zero
	length lines PLEEAAAASSSSEEEEE!

	* src/selection-chemistry.c (sp_selection_group): Use copy/del/add to make
	undo system happy

2001-03-20  Frank Felfe  <innerspace@iname.com>

	* src/nodepath.c (node_ctrl_moved) : set coorinate status

	* src/seltrans.c (sp_sel_trans_handle_new_event) : set coordinate status

	* src/sp-guide.* : new functions sp_guide_set, sp_guide_remove

	* src/helper/unit-menu.h : add abbreviation string into unitdesc

	* src/event-context.c (set_event_location) : set coordinate status
	popup desktop-properties on double click

	* src/desktop.* : new functions for statusbars
	(sp_desktop_indicator_*) : make indicator only show when decorations are visible

	* src/desktop-events.* : new guideline dialog
	small changes in sp_dt_ruler_event, sp_dt_guide_event

	* src/*_context.c (sp_*_context_root_handler) : make desktop->acetate
	grab mouse events during drawing

	* glade/guide_dialog.png: New file

2001-03-20  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-item-group.c (sp_group_menu): Add "Ungroup" item (does nothing at moment)

	* src/display/canvas-bgroup.c (sp_canvas_bgroup_point): Test sensitivity and stickyness
	(sp_canvas_bgroup_set_sensitive): New function

	* src/display/canvas-shape.c (sp_canvas_shape_point): Test sensitivity and stickyness
	(sp_canvas_shape_set_sensitive): New function

	* src/sp-item-group.c (sp_group_read_attr): Read "insensitive" too

	* src/sp-shape.c (sp_shape_read_attr): Read "insensitive" too

	* src/sp-item.c (sp_item_private_menu): Set menuitem label depending on sensibility

	* src/desktop.c (sp_desktop_init): Bind "event" to manipulate sticky state

	* src/display/canvas-image.c (sp_canvas_image_point): Check for
	SP_CANVAS_STICKY_FLAG

	* src/desktop.c (sp_desktop_event): New function, Set SP_CANVAS_STICKY_FLAG if
	user holds Shift key

2001-03-09  Lauris Kaplinski  <lauris@ximian.com>

	* glade/Makefile.am (pixmaps): Added all pixmaps to dist

	* configure.in: Version 0.22

2001-03-09  Frank Felfe  <innerspace@iname.com>

	* src/desktop.c (sp_desktop_update_scrollbars): Cleanup

	* src/event-context.c (sp_event_context_private_root_handler): Use
	Gdk keysyms instead of numeric values. Add moving/panning keybindings,
	space for root menu popup
	(sp_event_root_menu_popup): Pop menu on space

	* select-context.c (sp_select_context_root_handler): Use Gdk keysyms
	instead of numeric values

	* selection-chemistry.c (sp_selection_move_screen): New function
	(sp_selection_item_next): New function

	* doc/keybingings.txt: New keybingings

2001-03-09  Lauris Kaplinski  <lauris@ximian.com>

	* src/nodepath.c (node_event): Update repr after deletion

	* src/file.c (file_open_ok): Destroy widget instead of hiding
	(file_open_cancel): New function
	(sp_file_open): Connect new cancel handler
	(file_save_ok): Exit from private main loop
	(file_save_cancel): New function
	(sp_file_save_as): Connect new cancel handler, enter private loop
	(file_import_cancel): New function
	(sp_file_import): Connect new cancel handler
	(file_export_cancel): New function
	(sp_file_export): Connect new cancel handler

2001-03-08  Lauris Kaplinski  <lauris@ximian.com>

	* src/interface.c (sp_ui_delete): New function presenting close
	dialog box if needed
	(sp_ui_close_view): Use sp_ui_delete ()
	(sp_create_window): Connect "delete_event" and set window title

	* src/file.c (sp_file_save_document): New function

	* src/document-undo.c (sp_document_done):  Set "modified" attribute

	* src/file.c (file_save_ok): Clear "modified" attribute

2001-03-07  Lauris Kaplinski  <lauris@ximian.com>

	* doc/keybindings.txt: Register node editing keystrokes

	* src/desktop.c (sp_desktop_new): Do not grab focus here

	* src/helper/sodipodi-ctrl.c: Added shape argument type
	(sp_ctrl_class_init): Ditto
	(sp_ctrl_init): Ditto
	(sp_ctrl_set_arg): Ditto
	(sp_ctrl_update): New logic, keep node absolute size always odd number
	(sp_ctrl_point): Ditto
	(draw_line): New function
	(draw_point): New function
	(sp_ctrl_render): New logic, draw diamond shape

	* src/desktop-events.c (sp_desktop_root_handler): Grab focus on
	acetate enter notify

	* src/knot.c (sp_knot_set_arg): Set shape attribute
	(sp_knot_handler): Grab focus on enter notify
	(sp_knot_update_ctrl): Set shape
	(sp_knot_set_ctrl_state): New function

	* src/node-context.c (sp_node_context_root_handler): Process keypresses

	* src/nodepath.c (sp_nodepath_node_new): Connect "event" and set knot shape
	(node_clicked): Toggle type on Ctrl-click
	(node_event): New signal handler for keypresses
	(sp_nodepath_set_node_type): Set knot shape

2001-02-21  Michael Meeks  <michael@ximian.com>

	* configure.in: depend on Bonobo >= 0.37.

2001-02-21  Lauris Kaplinski  <lauris@ximian.com>

	* configure.in: Commented out GNOME_PRINT_CHECK

2001-02-19  Lauris Kaplinski  <lauris@ximian.com>

	* src/desktop.c (sp_desktop_connect_item): New function

	* src/sp-item.c (sp_item_view_new_prepend): View list management
	(sp_item_view_list_remove): Ditto

	* src/sp-item.h: SPItemView - new object encapsulating view. I also induced
	changes in almost all source files

	* src/sp-item-group.h: New file

	* src/bonobo/embeddable-drawing.c (sp_embeddable_drawing_get_type):
	Use new bonobo object stuff
	(sp_embeddable_drawing_factory): Ditto

	* src/bonobo/embeddable-desktop.c (sp_embeddable_desktop_get_type):
	Use new bonobo object stuff
	(sp_embeddable_desktop_factory): Ditto

	* src/bonobo/embeddable-document.c (sp_embeddable_document_get_type):
	Use new bonobo object stuff
	(sp_embeddable_document_new): Ditto

2001-02-17  Lauris Kaplinski  <lauris@ximian.com>

	* src/sp-object.c (sp_object_getAttribute): New function
	(sp_object_setAttribute): New function
	(sp_object_removeAttribute): New function

2001-02-11  Lauris Kaplinski  <lauris@ximian.com>

	* configure.in: Added es to ALL_LINGUAS

2001-02-07  Lauris Kaplinski  <lauris@ximian.com>

	* src/dialogs/object-properties.c: Added channel sliders
	* glade/object_props.glade: Ditto
	* samples/mangatips6.svg: New file
	* samples/mangatips7.svg: New file
	* samples/mangatips8.svg: New file
	* samples/mangatips9.svg: New file
	* samples/mangatips10.svg: New file

2001-02-06  Lauris Kaplinski  <lauris@ximian.com>

	* samples/mangatips3.svg: New file
	* samples/mangatips4.svg: New file
	* samples/mangatips5.svg: New file

2001-01-29  Fatih Demir	<kabalak@gmx.net>

	* src/widgets/.cvsignore: Added this.

2001-01-26  Lauris Kaplinski  <lauris@ximian.com>

	* configure.in: Version 0.21

2001-01-24  Lauris Kaplinski  <lauris@ximian.com>

	* src/document-undo.c (sp_document_add_repr): Do not expect repr
	always correspond to item

	* src/toolbox.c (sp_maintoolbox_create): Save edit/undo/redo widgets
	(sp_update_draw_toolbox): Unsensitize undo/redo for draw and node
	contexts

2001-01-09  Lauris Kaplinski  <lauris@ximian.com>

	* src/desktop (sp_desktop_change_document): Update namedviews aslo

2001-01-09  Lauris Kaplinski  <lauris@ximian.com>

	* samples/mangatips1.svg: New file
	* samples/mangatips2.svg: New file

	* src/xml/Makefile.am: Use SODIPODI_CFLAGS

2001-01-08  Frank Felfe  <innerspace@iname.com>

	* desktop.*: use gnomeappbar in desktop-window,
	use gtk_combo_text widget from libgal

	* src/desktop-events.c: use gnomeappbar

	* src/event-context.c: global keybindings

	* src/select-context.c: keybindings

	* src/text-context.c: filter Ctrl-keys for keybindings

	* src/interface.c: connect to focus-in-event from desktop-window

	* glade/toolbox.glade: keybindings for the maintoolbox-menu

	* doc/keybindings.txt

2001-01-08  Lauris Kaplinski  <lauris@helixcode.com>

	* src/selection-chemistry.c (sp_selection_rotate_90): Brought
	function here from toolbox.c and renamed

	* glade/toolbox.glade: Use sp_selection_rotate_90

	* src/desktop_snap.* (sp_desktop_circular_snap): New function

	* src/rect-context.c (sp_rect_context_destroy): Finish object, if exists

	* src/ellipse-context.c: (sp_ellipse_context_destroy): Ditto

2001-01-04  Lauris Kaplinski  <lauris@helixcode.com>

	* src/helper/sodipodi-ctrlrect.*: Draw by hand instead of using
	libart. That fixed ugly-ugly freezing bug in Mandrake

	* src/preferences-skeleton.h: New file, encoding default preferences

	* glade/sodipodi.glade: Changes _Uus to _New in menu ;)

	* src_sodipodi.* (sodipodi_load_preferences): New function
	(sodipodi_save_preferences): New function
	(sodipodi_get_repr): New function for retrieving data from preferences
	DOM tree.

	* src/draw-context.c (set_to_accumulated): Use style preferences
	* src/rect-context.c (sp_rect_drag): Ditto
	* src/ellipse-context.c (sp_ellipse_drag): Ditto
	* src/text-context.c (sp_text_context_root_handler): Ditto
	(sp_text_complete): ungrab keyboard

	* src/toolbox.c (sp_toolbox_create): Use preferences

2001-01-02  Lauris Kaplinski  <lauris@helixcode.com>

	* src/widgets/sp-toolbox.*: general toolbox implementation

	* src/toolbox.c: Use SPToolBox widget, load and save toolbox states

	* src/sodipodi.* (sodipodi_set_key): New function for setting
	preference values into xml tree
	(sodipodi_get_key): Ditto
	(sodipodi_set_key_as_number): Ditto
	(sodipodi_get_key_as_number): Ditto

	* src/xml/repr-io.c (sp_repr_read_file): Load whatever element node as root
	(sp_repr_read_mem): Ditto

2000-12-31  Michael Meeks  <michael@helixcode.com>

	* src/xml/repr-io.c (sp_repr_save_file): split into
	(sp_repr_save_stream): here.

	* src/bonobo/embeddable-document.c (sp_embeddable_document_pf_load),
	(sp_embeddable_document_pf_save): update signatures for new persistfile API.

2000-12-30  Lauris Kaplinski  <lauris@helixcode.com>

	* src/main.c (main): Reenable command-line filenames

	* src/sodipodi.* (sodipodi_application_new): New function

2000-12-29  Michael Meeks  <michael@helixcode.com>

	* src/bonobo/embeddable-document.c (sp_embeddable_document_factory): upd.

	* Makefile.am (oafdir): kill gnorba bits, update naming.

	* src/bonobo/svg-doc-factory.c (sp_svg_doc_factory_init): upd.
	(sp_svg_factory): new multi factory.

	* GNOME_Sodipodi.oafinfo: add, rename stuff.

	* configure.in (have_bonobo): require bonobo >= 0.30

2000-12-28  Christopher R. Gabriel  <cgabriel@softwarelibero.org>

	* configure.in (ALL_LINGUAS): 'it'

2000-12-27  Lauris Kaplinski  <lauris@helixcode.com>

	* src/display/nr-svp-uncross.c: Lot of clenaup

	* src/display/nr-svp-render: Comment out printouts

	* src/display/nr-primitives.h: #define NR_COORD_TOLERANCE

2000-12-26  Lauris Kaplinski  <lauris@helixcode.com>

	* src/display/nr-svp-uncross.c (nr_svp_uncross_full): more cases -
	rays, intersection - some cleanups

	* src/display/nr-svp-render.c (nr_svp_render_rgb_rgba): Cleanups

2000-12-25  Lauris Kaplinski  <lauris@helixcode.com>

	* src/display/nr-primitives.h: Move NRCoord and NRPoint here
	* src/display/nr-primitives.c: NRDRect methods

	* src/display/nr-svp.*: Rewrite. NRSVP is now simple ordered
	segment and we use linked (sorted) lists for describing more
	complex geometries
	* src/display/nr-svp-uncross.*: Ditto, partial implementation
	* src/display/nr-svp-render.* Ditto. Works.

2000-12-21  Lauris Kaplinski  <lauris@helixcode.com>

	* src/display/nr-svp-render.c: Lot's of cleanup

2000-12-20  Lauris Kaplinski  <lauris@helixcode.com>

	* src/display/nr-svp-render.c (nr_svp_render_rgb_rgba): It
	works to some extent!
	* src/display/canvas-shape.c (sp-canvas_shape_render): Use New
	Rendering, #ifdef NEW_RENDER

	* src/display/testnr.c: Silly file

2000-12-19  Lauris Kaplinski  <lauris@helixcode.com>

	* src/display/nr-uta.*: UTA Implementation

	* src/display/nr-aa-canvas.*: RGB Buffer canvas

	* src/display/sp-arena.*: Widget, using RGB canvas

	* src/display/sp-canvas-item.*: Item subclass for arena
	* src/display/sp-canvas-group.*: Ditto

2000-12-17  Lauris Kaplinski  <lauris@helixcode.com>

	* src/display/nr-primitves.h: typedef NRPoint

	* src/display/nr-canvas.*: More code
	* src/display/nr-canvas-item.*: Ditto
	* src/display/nr-canvas-group.*: Ditto

2000-12-16  Lauris Kaplinski  <lauris@helixcode.com>

	* src/display/nr-canvas-group.*: Base class for canvas groups
	* src/display/nr-primitives.*: Graphic primitives

2000-12-15  Lauris Kaplinski  <lauris@helixcode.com>

	* src/display/nr-canvas.*: Experimental new rendering stuff (not working)
	* src/display/nr-canvas-item.*: Ditto (not working)
	* src/display/nr-svp.*: Ditto (works)
	* src/display/nr-svp-uncross.*: Ditto (works)
	* src/display/nr-svp-render.*: Not working yet

	* configure.in: Added {with|without}-new-render switch

2000-11-30  Szabolcs Ban  <shooby@gnome.hu>

	* glade/toolbox.c: corrected "zom factor" to "zoom factor"

2000-11-30  Szabolcs Ban  <shooby@gnome.hu>

	* configure.in (ALL_LINGUAS): add hu.

2000-11-26  Lauris Kaplinski  <lauris@helixcode.com>

	* src/toolbox.c (sp_maintoolbox_create): Strip toolbox names
	(sp_toolbox_create_widgets): Make windows toplevel

	* glade/*.glade: Make windows to be toplevel

2000-11-25  Christopher R. Gabriel  <cgabriel@softwarelibero.org>

	* debian/: added the debian scripts from package maintainer,
	Davide Puricelli <evo@debian.org>

2000-11-17  Yuri Syrota  <rasta@renome.rovno.ua>

	* glade/transformation.c
	* glade/transformation.glade: correct "vertival move" to "vertical move"

2000-11-17  Lauris Kaplinski  <lauris@helixcode.com>

	* src/dialogs/text/edit.c (sp-text-dialog-close): Destroy
	dialog, so font listing will be regenerated

2000-11-02  Michael Meeks  <michael@helixcode.com>

	* configure.in: Check for bonobo >= 0.27

2000-10-27  Michael Meeks  <michael@helixcode.com>

	* configure.in (ALL_LINGUAS): add pt_BR.

2000-10-26  Lauris Kaplinski  <lauris@helixcode.com>

	* configure.in: Define libxml include path

	* src/Makefile.am: Use libxml include path

	* src/main.c: Ditto

	* src/xml/Makefile.am: Ditto

	* src/xml/repr-io.c: Ditto

2000-10-21  Zbigniew Chyla  <cyba@gnome.pl>

	* configure.in: Added pl to ALL_LINGUAS.

2000-10-21  Zbigniew Chyla  <cyba@gnome.pl>

	* sodipodi/src/toolbox.c (sp_maintoolbox_create):
	Marked strings for translation.

2000-10-18  Christophe Merlet  <christophe@merlet.net>

	* configure.in: Oups, forgotten to add French (fr) to $ALL_LINGUAS

2000-10-18  Christophe Merlet  <christophe@merlet.net>

	* sodipodi.desktop: Added French string.

2000-10-17  Lauris Kaplinski  <lauris@helixcode.com>

	* src/nodepath.c (sp_nodepath_node_destroy): fixed YANC (Yet
	Another Nodepath Crash)

2000-10-16  Frank Felfe  <innerspace@iname.com>

	* glade/toolbox.glade: Updated zoom toolbox

	* src/desktop-events.*: Added sp_canvas_root_handler

	* src/desktop.c: Added statusbar, clean up zooming

	* src/sp-metrics.* (sp_metric_to_metric_string): A way to
	suppress metric identifier in strings

	* src/sp-ruler.c: Copy GtkRuler object

	* src/zoom-context.c: Use desktop region markup with border

	* src/bonobo/embeddable-desktop.c: Ditto

2000-10-13  Lauris Kaplinski  <lauris@helixcode.com>

	* src/text-context.c (sp_text_context_item_handler): Return
	if repr == NULL; Commit changes to undo stack.

2000-10-11  Lauris Kaplinski  <lauris@helixcode.com>

	* src/draw-context.c (sp_draw_context-destroy): Detach signal

2000-10-11  Frederic Devernay <Frederic.Devernay@sophia.inria.fr>

	* Makefile.am: Use test -r for compatibility

	* src/Makefile.am: Remove -export-dynamic

	* src/main.c: Use libxml 1.8.8/2.0

	* src/interface.c: Make fake_dialogs nonstatic

	* src/xml/repr-io.c: Use libxml 1.8.8/2.0

2000-10-09  Lauris Kaplinski  <lauris@helixcode.com>

	* configure.in: Version 0.20

	* src/helper/unit-menu.*: New convenience object

	* src/desktop.c (sp_desktop_destroy): Destroy first eventcontext,
	then selection

	* src/draw-context.c: Make silent

	* src/file.c (sp_file_import_ok): Use "xlink:href" for images

	* src/sp-image.c (sp_image_read_attr): Use "xlink:href"
	(sp_image_repr_read_image): Ditto

	* src/svg/svg.h: Use bitfield for units

2000-10-08  Lauris Kaplinski  <lauris@helixcode.com>

	* src/dialogs/object-properties.c: Do not keep CSS objects, so
	fill & stroke do not overwrite each other settings

2000-10-08  Frank Felfe  <innerspace@iname.com>

	* glade/align.glade: Improvements

	* glade/object_props.glade: New layout

	* src/sp-ruler.*: New files, implementing wrapper for Gtk rulers

	* src/sp-metrics.*: Default metrics, ruler metrics

	* src/desktop.c (sp_desktop_init): use ruler wrappers

2000-10-07  Lauris Kaplinski  <lauris@helixcode.com>

	* src/desktop.c (sp_desktop_realize): Zoom to page on first display

	* src/document-undo.c (sp_document_done): Limit undo to 128 levels

	* src/document.c (sp_document_new): Set docbase & docname before
	creating object tree

	* src/sp-image.c (sp_image_repr_read_image): Find right root repr

	* src/sp-shape.c (sp_shape_paint): Use right stroke width

	* src/dialogs/export.c (sp_export_do_export): use ::paint() method

	* src/xml/repr-io.c (sp_repr_svg_read_node): Return on comment and text
	nodes

	* src/xml/repr.c (sp_repr_document): Implement

2000-10-06  Lauris Kaplinski  <lauris@helixcode.com>

	* glade/document.glade: Page setup dialog

	* src/dialogs/document-properties.c: Implement page
	setup dialog

	* src/desktop.*: Keep page rectangle in SPDesktop

	* src/sp-root.c: Update page rectangle

	* src/file.c (sp_file_print_to_printer): gnome_print_bgeinpage ()
	Remove FRGBA creation

	* src/dialogs/export.c (sp_export_do_export): gnome_print_beginpage ()

	* glade/sodipodi.glade: Add document & xml tree to properties menu

	* src/interface.c (sp_create_window): Remove ugly buttons

	* src/mdi-ui.*: Removed
	* src/dialogs/object-fill.*, object-stroke.*: Removed

2000-10-05  Lauris Kaplinski  <lauris@helixcode.com>

	* src/helper/canvas-grid.*: Grid item for canvas

	* src/sp-namedview.c: Use & update grid

	* src/desktop-snap.c: Snap to grid

2000-10-04  Frank Felfe <innerspace@iname.com>

	* glade/transformation.glade: Improved dialog

	* glade/*.xpm: New icons

	* src/dialogs/transformation.*: Improved dialog

	* src/selection-chemistry.*: new transformation functions

	* src/sp-metrics.*: New files

2000-10-04  Lauris Kaplinski  <lauris@helixcode.com>

	* src/nodepath.c: #define reasonable knot colors
	(sp_nodepath_selected_nodes_move): Implement snapping
	(node_ctrl_request): Implement snapping

2000-10-03  Lauris Kaplinski  <lauris@helixcode.com>

	* src/nodepath.c (update_repr): Call sp_document_done ()

	* src/dialogs/desktop-properties.*: Use new dialog layout

	* glade/desktop.glade: Use new dialog layout

	* src/sp-guide.*: "color" and "hicolor" attributes

	* src/sp-namedview.*: Bunch of new attributes

	* src/desktop-events.c (sp_dt_guide_event): Use guide colors
	(sp_dt_ruler_event): Use guide colors

2000-10-02  Lauris Kaplinski  <lauris@helixcode.com>

	* src/knot.c (sp_knot_set_flag): Implement different outlines
	(sp_knot_update_ctrl): New function to set SPCtrl colors

	* src/nodepath.*: Mostly rewritten

	* src/node-context.*: Use new SPNodePath

2000-09-30  Yukihiro Nakai  <nakai@gnome.gr.jp>

	* configure.in ALL_LINGUAS: Add Japanese 'ja'

2000-09-21  Pablo Saratxaga <pablo@mandrakesoft.com>

	* configure.in: ALL_LINGUAS: added 'ca' for Catalan translation.

2000-09-18  Lauris Kaplinski  <lauris@helixcode.com>

	* src/dialogs/object-properties.*: New combined fill + stroke +
	transformation dialog by Frank Felfe

	* glade/*.xpm: Lots of new icons etc. by Frank Felfe

	* src/desktop.*, interface.c, select-context.c, seltrans.c: Changes

	* selection-chemistry.* (sp_selection_apply_affine): New function by
	Frank Felfe
	(sp_selection_remove_transforms): Same

2000-09-17  Lauris Kaplinski  <lauris@helixcode.com>

	* src/draw-context.c (sp_draw_context_root_handler): Handle Ctrl
	and fix an missing segment, while continuing Ctrl-aligned line.

	* src/ellipse-context.c (sp_ellipse_read-attr): Use sodipodi namespace
	for "start", "end". Replace "closed" with "open", so closed is default

	* src/sp-ellipse_context.c: Ditto

	* src/sp-object.c: #define SP_OBJECT_CLONED_FLAG

	* src/sp-root.c (sp_root_read_attr): Tru to read "viewBox" attribute.
	The implementation is hackish, but it works, until document size is fixed

	* src/display/canvas-shape.c (sp_canvas_shape_update): Calculate correct
	line thickness

2000-09-16  Lauris Kaplinski  <lauris@helixcode.com>

	* src/draw-context.*: Freehand should work OK now

	* src/display/canvas-shape.c (sp_canvas_shape_render): Test, if
	archetype has stroke SVP

	* src/display/path-archetype.c (sp_path_at_new): Disturb Vpaths
	before stroking - this removes ugly random crashing in art_uta_from_svp

2000-09-15  Lauris Kaplinski  <lauris@helixcode.com>

	* src/sp-line.h, sp-line.c: <line> item

	* src/sp-polyline.h, sp-polyline.c: <polyline> item

	* src/sp-polygon.c, sp-polygon.h: <polygon> item

	* src/sp-object-repr.c (sp_object_type_lookup): Register new item types

	* src/helper/curve.c (sp_curve_closepath): Add point, if end != start

2000-09-14  Lauris Kaplinski  <lauris@helixcode.com>

	* src/Makefile.am: Define GNOME_PIXMAPDIR

	* src/main.c (main): Set default icon

	* interface.c (sp_create_window): Set icon

	* src/sp-text.c (sp_text_set_shape): Use helvetica for unknown font

	* src/helper/art-utils.* (art_svp_translate): New function
	(art_uta_from_svp_translated): Use art_svp_translate ()

	* draw-context.*: Use experimental spline fitting for freehand
	lines, during drawing generate many small lines, instead of
	one big.

2000-09-13  Lauris Kaplinski  <lauris@helixcode.com>

	* desktop-snap.c, desktop-snap.h (sp_desktop_horizontal_snap):
	Implemented
	(sp_desktop_vertical_snap): Ditto
	(sp_desktop_free_snap): Rewrote, using horiz. and vert. snapping
	(sp-desktop_vector_snap): Implemented

	* rect-context.c, rect-context.h: Rewrote event handling stuff,
	so it now supports (hopefully) all snapping chemistry

	* sp-namedview.c (sp_namedview_build, sp_namedview_read_arg):
	Implemented arguments "snaptoguides" and "guidetolerance"

	* sp-rect.c (sp_rect_set_arg): Implemented Gtk+ argument setting

	* ellipse-context.c, ellipse-context.h: Ditto

2000-09-12  Lauris Kaplinski  <lauris@helixcode.com>

	* src/*.c, glade/desktop.*, src/dialog/desktop-properties.*:
	Hacked together a preliminary guideline support stuff.  It
	sucks really for anything other than scaling, but now we have
	at least something to improve in future.

2000-09-09  Lauris Kaplinski  <lauris@helixcode.com>

	* sodipodi.c, sodipodi-private.h: New filed. Bye-bye to
	Gnome-MDI interface, instead we have much more convenient
	sodipodi object.
	This introduced many changes mostly everywhere.

	* src/helper/gt1*, src/helper/parseAFM.*: removed gt1 library,
	as it is now accessible through gnome-print

	* Makefile.am, src/Makefile.am, glade/Makefile.am: We'll pass
	'make distcheck' again

	* src/sp-item-group.c: Children update, if parent's style is
	changed

2000-09-06  Lauris Kaplinski  <lauris@helixcode.com>

	* glade/*: Added Frank Felfe new icons and toolbopx stuff

	* src/toolbox.*: Toolbox stuff (Frank Felfe)

	* src/sp-item-transform.*: Same

2000-08-24 Alastait McKinstry <mckinstry@computer.org>

	* configure.in: ALL_LINGUAS: added 'ga' for Irish translation.

2000-08-19  Lauris Kaplinski  <lauris@helixcode.com>

	* glade/transformation.glade: Transformation dialog (Frank Felfe)

	* src/dilaogs/transfomration.*: Transfomration dialog (Frank Felfe)

	* src/mdi-ui.c: Added transformation dialog

	* po/POTFILES.in: Added glade/transformation.c

2000-08-18  Lauris Kaplinski  <lauris@helixcode.com>

	* configure.in: Version 0.19
	* Makefile.am: Comment out dist-hook
	* sodipodi.spec.in: Build 0

	* glade/align.glade: Added alignment base selection

	* po/POTFILES.in: Added src/dialogs/align.c

	* src/desktop.c: Display page borders

	* src/sp-text.c: break text at newlines

	* src/dialogs/align.c: New algorithm plus alignment base selection

2000-08-15  Lauris Kaplinski  <lauris@helixcode.com>

	* glade/stroke.glade: Moved dialog to separate file
	* Added Frank Felfe icons, that I forgot last time

2000-08-10  Lauris Kaplinski  <lauris@helixcode.com>

	* src/main.c (main): Commented out arg parsing - it segfaulted for me

	* glade/align.glade
	* glade/al*
	* src/dialogs/align.*: Alignmeant dialog by Frank Felfe <innerspace@iname.com>

	* configure.in: Need bonobo >= 0.17

	* src/bonobo/embeddable-document.c (sp_bonobo_stream_read): Bonobo API change

2000-08-10  Lauris Kaplinski  <lauris@helixcode.com>

	* doc/architecture.txt: First step in generating developers documentation

2000-08-09  Lauris Kaplinski  <lauris@helixcode.com>

	* glade/*.xpm: Added Frank Felfe's node editing icons and node dialog

	* src/sp-ellipse.c (sp_ellipse_description): return "Ellipse"

	* src/sp-text.c (sp_text_description): Return either contents or "Text" if NULL

2000-08-07  Lauris Kaplinski  <lauris@helixcode.com>

	* configure.in: Require gnome-print >= 0.21

	* glade/text-dialog.glade: New layout, suitable for gnome-font-selection

	* src/Makefile.am: Add libunicode

	* src/sp-chars.h:
	* src/sp-chars.c:
	* src/sp-text.h:
	* src/sp-text.c: Use gnome-font instead of wrapper

	* src/dialogs/text-edit.c: Use new GnomeFontSelection and GnomeFontPreview

2000-08-03  Michael Meeks  <michael@helixcode.com>

	* configure.in: update for BonoboX

2000-07-01  Lauris Kaplinski  <lauris@helixcode.com>

	* src/sp-namedview.c (and everywhere else): Guides are visible,
	although not functional yet.

	* src/desktop.c (sp_desktop_new): Use document + namedview
	combination for creating desktop.

2000-07-01  Lauris Kaplinski  <lauris@helixcode.com>

	* src/file.c (sp_do_file_print_preview): Don't use FRGBA, as
	print preview can handle alpha itself

	* src/sp-object-group.h
	* src/object-group.c: Added SPObjectGroup to handle groups of
	invisible objects (such as NamedViews)

	* src/sp-namedview.h:
	* src/sp-namedview.c: Extends SPObjectGroup

	* src/xml/sp-repr.c (sp-repr-destroy): fix hash table destroy

2000-06-21  Chema Celorio  <chema@celorio.com>

	* src/file.c (sp_do_file_print_preview): added print preview
	stuff. new function
	(sp_print_preview_destroy_cb): new function
	(sp_file_print_preview): new function
	modified the menu to include a print preview item

2000-06-21  Lauris Kaplinski  <lauris@helixcode.com>

	* src/selection.c (sp_selection_update_statusbar): Added original
	idea of printing sp_image_description (), if single item is
	selected

	* glade/*.xpm: Jeff's icons. I need to find a way to use png
	variants, xpm sucks

2000-06-21  Chema Celorio  <chema@celorio.com>

	* src/desktop.c (sp_desktop_set_status): it was #if'ed out,
	reenabel it.

	* src/selection.c (SP_SELECTION_C): added debug messages and macro
	If lauris does not like them I will take them away.
	(sp_selection_update_statusbar): new function

	* src/mdi.c (sp_mdi_app_created): add statusbar to main window.

2000-06-11  Benedikt Roth  <Benedikt.Roth@gmx.net>

	* configure.in: Added de to ALL_LINGUAS.
	* sodipodi.desktop: Added German translations

2000-06-05  Lauris Kaplinski  <lauris@kaplinski.com>

	* src/dialogs/export.c (sp_export_do_export): use pixbuf context,
	instead of rbuf

2000-06-05  Michael Meeks  <michael@helixcode.com>

	* src/dialogs/export.c (sp_export_do_export): s/rbuf_rgba_new/rbuf_new/

	* src/bonobo/embeddable-document.c: kill a load of redundant prototypes,
	and re-order to suit. (sp_embeddable_document_ps_save),
	(sp_embeddable_document_ps_load): fix for new stream API.
	(sp_embeddable_document_factory): update stream constructor.

2000-05-14  Lauris Kaplinski  <lauris@ariman.ee>

	* src/knot.*: Lot of rearranging, new signals

	* src/seltrans.c: Changes induced by new knot signalling
	Added fake snapping to PostScript points (remove it, if you dare ;)

2000-05-13  Lauris Kaplinski  <lauris@ariman.ee>

	* src/document-private.h: Removed width and height attributes

	* src/sp-root.c: Added "width" and "height" readable attributes

2000-05-12  Lauris Kaplinski  <lauris@ariman.ee>

	* src/xml/repr.h: A bit rearranging, added SPReprDoc, induces
	changes almost everywhere else

	* src/document-private.h: Hide all document internal structure

2000-05-12  Lauris Kaplinski  <lauris@ariman.ee>

	* src/sp-namedview.*: Implemented skeleton

	* src/sp-guide.*: Implemented skeleton

	* src/sp-object-repr.c: Added NamedView and Guide

	* src/helper/sp-guide.*: Changed name to SPGuideLine

2000-05-11  Lauris Kaplinski  <lauris@ariman.ee>

	* src/desktop-events.c: Collected events to separate file
	Added guidline and grid positioning skeleton

	* src/helper/sp-guide.*: Guideline implementation

2000-05-10  Lauris Kaplinski  <lauris@ariman.ee>

	* glade/*.xpm: Some new icons (thanks to Jeff Mrochuk)

	* src/knot.*: signals clicked, grabbed, ungrabbed, moved
	Many fixes and enhancements

	* src/seltrans.c: Use knots instead of Ctrl canvas items

2000-05-09  Michael Meeks  <michael@helixcode.com>

	* src/bonobo/svg-doc-factory.c (sp_svg_doc_factory_init): add
	config.h + OAFIID.

	* Makefile.am: Install oaf data.

	* src/main.c (main): re-tool for oaf.

	* configure.in: Check for oaf.

2000-05-06  Lauris Kaplinski  <lauris@ariman.ee>

	* src/knot.h: Added signals "grab", "ungrab" and "move"
	* src/knot.c: Implemented signals, event etc.

2000-05-05  Lauris Kaplinski  <lauris@ariman.ee>

	* src/desktop-handles.h: Added SP_DT_IS_EDITABLE
	* src/knot.*: started implementing universal handle object for
	all contexts

2000-05-05  Lauris Kaplinski  <lauris@ariman.ee>

	* src/Makefile.am: Define $gladedir, which has been forgotten :)
	* src/sp-image.c (sp_image_print): Do it :)

2000-05-03  Lauris Kaplinski  <lauris@ariman.ee>

	* src/main.c: Uncommented line interpreting unknown command-line
	arguments as filenames
	* src/document-undo.c (sp_document_undo): If attribute is 'id', find
	affected object from 'new' instead of 'key'
	* src/dialogs/xml-tree.c: Added missing sp_document_done flushes
	* src/sp-object.c (sp_object_read_attr): Fixed def-ing repr
	id attribute instead of objects one

2000-05-02  Lauris Kaplinski  <lauris@ariman.ee>

	* src/sp-item-group.c (sp_group_build): Check that xml node is
	known, before trying to build object from it

2000-05-02  Lauris Kaplinski  <lauris@ariman.ee>

	* src/sp-gradient.*: Implemented skeleton for gradient fills
	* src/sp-object-repr.c: Gradient parsing

2000-05-01  Lauris Kaplinski  <lauris@ariman.ee>

	* src/helper/sodipodi-ctrl.c: Fixed bug in ::render, which left
	buffer->is_bg untouched
	* src/sp-defs.*: New objects, implementing <defs> nodes
	* src/sp-group.*: Groups have both item and non-item members
	* src/sp-image.c: Changed "src" attribute to "href"

2000-04-29  Lauris Kaplinski  <lauris@ariman.ee>

	* xml/repr.*: Reprs are now GtkObjects
	* xml/repr-io.c: Preliminary namespacing (xmlns:sodipodi)

2000-04-29  Lauris Kaplinski  <lauris@ariman.ee>

	* src/dialogs/xml-tree.c (sp_xml_tree_change_attribute_long):
	new function to change long attribute (GtkEntry does not like
	long strings). Also attribute changing in xml pushes Undo stack.

2000-04-28  Lauris Kaplinski  <lauris@ariman.ee>

	* glade/Makefile.am: Added xml-tree.glade

	* src/dialogs/xml-tree.c (sp_xml_tree_change_attribute): implemented
	this

2000-04-27  Miguel de Icaza  <miguel@helixcode.com>

	* glade/Makefile.am: New file.

	* src/dialogs/Makefile.am (gladedir): Define gladedir based on
	$datadir

	* Makefile.am: Remove the local install hack stuff.  And process
	the glade directory.

	* configure.in: Do not define PACKAGE_GLADEDIR based on the output
	of gnome-config.  Let the Makefile.am compute that value from the
	various $prefix settings.

2000-04-27  Lauris Kaplinski  <lauris@ariman.ee>

	* src/dialogs/xml-tree.c: Attribute deletion mostly work

2000-04-27  Lauris Kaplinski  <lauris@ariman.ee>

	* src/dialogs/xml-tree.*: Started implementing direct xml editing

	* glade/xml-tree.glade: XML editing dialogs

2000-04-26  Lauris Kaplinski  <lauris@ariman.ee>

	* helper/curve.c (sp_curve_split): Fixed evil memcpy size bug

2000-04-24  Lauris Kaplinski  <lauris@ariman.ee>

	* src/selection-chemistry.c: Implemented Cut/Copy/Paste

2000-04-23  Lauris Kaplinski  <lauris@ariman.ee>

	* src/document.h: added aspect and clip attributes

	* src/bonobo/embeddable-desktop.c: keep full page always visible

	* src/bonobo/embeddable-document.c: print scaled full page

2000-04-21  Lauris Kaplinski  <lauris@ariman.ee>

	* src/mdi-document.c: extract ACTIVE_DOCUMENT for ACTIVE_DESKTOP
	instead of MDIChild

	* glade/sodipodi.glade: Popup menu

	* src/event-context.c: (sp_event_context_private_root_handler)
	Popup menu on button 3, if event is not consumed

	* src/zoom-context.c: (sp_zoom_context_root_handler)
	Assign zoom_out to Shift+Button1 to free Button3 for popup

	* src/draw-context.c: (sp_draw_context_root_handler)
	Invoke parent handler, if event is not consumed

2000-04-21  Lauris Kaplinski  <lauris@ariman.ee>

	* configure.in: removed plugins/Makefile (not yet folks!)

	* src/bonobo/embeddable-document.c (sp_embeddable_document_factory):
	switched to original gnome-print-context instead of FRGBA

2000-04-21  Michael Meeks  <michael@helixcode.com>

	* configure.in (have_bonobo): add -lbonobo-print

	* src/bonobo/embeddable-document.c (sp_embeddable_document_factory):
	add the print interface.

2000-04-21  Fatih Demir	<kabalak@gmx.net>

	* configure.in : Added tr to ALL_LINGUAS .

	* sodipodi.desktop : Added [tr] ..

2000-04-20  Lauris Kaplinski  <lauris@ariman.ee>

	* glade/sodipodi.glade: toggling rulers and scrollbars on/off
	* desktop.c: construct it by hand, borders can be removed
	* mdi-desktop.c: new logic for activating desktops (bonobo needed it)
	* bonobo/embeddable-document.c: removed MDI refcounting
	* bonobo/embeddable-desktop.c: added MDI refcounting, active desktop
	management and hiding borders, if not active

2000-04-20  Andreas Hyden  <a.hyden@cyberpoint.se>

	* sodipodi.desktop: Added Swedish translation.
	* configure.in: Added sv to ALL_LINGUAS.

2000-04-19  Lauris Kaplinski  <lauris@ariman.ee>

	* configure.in: Added chack for GnomePrintRBuf and GnomePrintFRGBA
	* sp-shape.c: if FRGBA is present, do not emulate alpha
	* file.c: print via FRGBA, if present
	* dialogs/export.c: export via RBuf, if present
	* sp-object.c: fixed infinite loop in allocating id-s

2000-04-17  Lauris Kaplinski  <lauris@ariman.ee>

	* src/sp-image.c: completed migration to new gdk-pixbuf
	* src/display/canvas-image.c: completed migration

2000-04-17  Michael Meeks  <michael@helixcode.com>

	* src/sp-image.c (sp_image_pixbuf_force_rgba): fix.
	(sp_image_bbox): fix.

2000-04-14  Lauris Kaplinski <lauris@ariman.ee>

	* Makefile.am: fixed .desktop inclusion to distribution

2000-04-12  Pablo Saratxaga Pablo <pablo@mandrakesoft.com>

	* configure.in (ALL_LINGUAS): Add Danish

200-04-09  Lauris Kaplinski  <lauris@ariman.ee>

	* bonobo/canvas-translator.*: implemented a translator group, which
	translates xlib canvas calls to antialiased canvas ones.

200-04-09  Lauris Kaplinski  <lauris@ariman.ee>

	* document.c: Removed bad memory corruption bug in ::destroy
	* embeddable-document.c: Added PersistentFile interface
	* embeddable-drawing.*: Added BonoboCanvasComponent interface

200-04-08  Lauris Kaplinski  <lauris@ariman.ee>

	* Makefile.am: create sodipodi-bonobo symlink if we use bonobo
	* src/sodipodi/*: Added bonobo component, nothing interesting yet

200-04-07  Lauris Kaplinski  <lauris@ariman.ee>

	* sodipodi.gnorba: added this, embeddable document will follow soon
	* configure.in: added bonobo check

200-04-07  Lauris Kaplinski  <lauris@ariman.ee>

	* sp-shape.c: It prints now semitransparent shapes, rendering these
	to bitmaps. No clipping yet and resolution is hardcoded to 72dpi

200-04-05  Kjartan Maraas  <kmaraas@online.no>

	* no.po: Added no to ALL_LINGUAS.

2000-04-05  Lauris Kaplinski <lauris@ariman.ee>

	* sp-document.c, sp-file.c, sp-image.c: removed namespace. How to
	extract this correctly from libxml?

2000-04-05  Lauris Kaplinski <lauris@ariman.ee>

	* xml/repr.c: added order_changed_pre callback
	* document-undo.c: stacking order changes are now undoable
	* sp-document.c, sp-file.c, sp-image.c: added namespace "sodipodi",
	still have to do official definition

2000-04-04  Lauris Kaplinski <lauris@ariman.ee>

	* xml/repr-io.c: save DTD & standard header
	* dialogs/object-*: modify default fill & stroke, if nothing selected

2000-04-04  Lauris Kaplinski <lauris@ariman.ee>

	* selection.*: Added functions to select via reprs (now when we have
	unique id-s there isn't any reason thare wasn't such)

2000-04-02  Lauris Kaplinski <lauris@ariman.ee>

	* xml/repr-io.c: A very quick hack to load real svg code (DTD & stuff).
	* sp-shape.c: Fixed bug in exporting open paths, so they are not filled
	anymore.
	* sp-image.c: We can print semitransparent images, although better do not
	stretch these very much

2000-04-02  Lauris Kaplinski <lauris@ariman.ee>

	* document-undo.c, document.c: Undo should now work!

2000-04-01  Lauris Kaplinski <lauris@ariman.ee>

	* document.c: Some undoing/redoing works (duplicate & delete)

2000-04-01  Lauris Kaplinski <lauris@ariman.ee>

	* sp-item-group.c: cleaned up signals, reordering should work now
	* hunted memory leaks & removed most obvious ones

2000-03-31  Lauris Kaplinski <lauris@ariman.ee>

	* Basically completed rewrite, most things do not work

2000-03-30  Lauris Kaplinski <lauris@ariman.ee>

	* Bumped version number to 0.18 & started rewrite of object system

2000-03-29  Lauris Kaplinski <lauris@ariman.ee>

	* Modified argument parsing, --without-gui, if present, has to be first
	* argument, but otherwise now all GNOME/Gtk args work
	* You can also specify multiple files for displaying or printing

2000-03-28  Lauris Kaplinski <lauris@ariman.ee>

	* Added cute little squirrel to /gnome/apps/Graphics ;-)
	* src/desktop.c: Set canvas background to white
	* Makefile.am: added samples to tarball

2000-03-27  Lauris Kaplinski <lauris@ariman.ee>

	* main.c: Applied Yukihiro Nakai FreeBSD patches
	* main.c: Set LC_NUMERIC to "C", to avoid localisation of SVG files :-(

2000-01-25  Lauris Kaplinski <lauris@ariman.ee>

	* dialogs/export.*: a bit better png exporting, still sucks

2000-01-25  Lauris Kaplinski <lauris@ariman.ee>

	* sp-image.c: Cleanups here and there
	* display/canvas-image.c: point method uses alpha, removed SVP-s

2000-01-23  Lauris Kaplinski <lauris@ariman.ee>

	* helper/art*: functions for rendering into RGBA buffer
	* file.*, sp-shape.*, sp-image.*: exporting png bitmaps

2000-01-23  Lauris Kaplinski <lauris@ariman.ee>

	* Uses SPCurve everywhere

2000-01-19  Lauris Kaplinski <lauris@ariman.ee>

	* src/helper/sodipodi-ctrl.*: removed aa rendering

2000-01-18 David Metcalfe (crdjm@sgi.com)

	* Added command line options:
	. [ -f ] file  to load file at startup
	. -p file      to print the file without the GUI starting
	. -t file      to send the print output to the named file
	* -t is currently required for -p as I couldn't find a way of creating
	  a GnomePrinter that goes to the default printer. ??
	* Printing doesn't require that X be started

2000-01-16  Lauris Kaplinski <lauris@ariman.ee>

	* Bumped version to 0.17
	* Most things, that worked in 0.15 work again
	* still looses selections, dialogs suck etc.

2000-01-14  Lauris Kaplinski <lauris@ariman.ee>

	* Now uses Gnome MDI
	* Stroke & fill dialogs almost work for multiple displays

2000-01-08  Lauris Kaplinski <lauris@ariman.ee>

	* Major rewrite of object system
	* Multiple views almost work
	* Multiple documents almost work
	* Rects, Ellipses, Drawing and Nodes almost work
	* Nothing else works ;-(

1999-12-30  Lauris Kaplinski <lauris@ariman.ee>

	* Bumped version number to 0.15
	* Node editing works enough to be usable
	* Images use relative paths, if possible
	* Text can show accented chars

1999-12-25  Lauris Kaplinski <lauris@ariman.ee>

	* Increased version number to 0.14
	* Preliminary node editing mode
	* Stacking order can be changed again
	* Convert to Curves, Combine & Separate functions
	* Corrected repr refcounting - much fewer segfaults now
	* Countless bugfixes here & there

1999-12-23  Lauris Kaplinski <lauris@ariman.ee>

	* Major cleanup - most things work better now, but some
	don't work at all :-(
	* Implemented SPChars class
	* Text editing
	* svg importing
	* loading, saving and printing almost works

1999-09-02  Lauris Kaplinski <lauris@ariman.ee>

	* Rewrote many things and hacked up the rest.
	Removed Gdome dependency, as I had neither time nor patience
	to mess with it. As a temporary solution I've created SPRepr objects,
	which can contain xml data.
	Added functions: group, ungroup, delete, duplicate, to_front,
	to_back, up, down
	Freehand drawing almost works although need some cleanup
	Outlines are implemented, although not usable yet
	Rect can handle round corners i hope
	Ellipse can be sliced

# Local Variables:
# tab-width:8
# indent-tabs-mode:t
# End:
# vim: tabstop=4:noexpandtab:shiftwidth=4
