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_desactivate_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_desactivate): Ditto
	(sp_desktop_widget_new): Use desktop "activate" and "desactivate" signals
	instead of sodipodi ones, signature change
	(sp_desktop_class_init): Added "activate" and "desactivate" 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
    
