See ChangeLog for newer entries 2004-03-31 Ted Gould * src/interface.cpp: Changing the default size so that it matches the default template size. This way, for blank documents, the window doesn't open and then resize. 2004-03-31 Ted Gould * src/file.cpp, src/dialogs/filedialog.cpp, src/extension/db.cpp, src/extension/db.h, src/extension/system.cpp: A bunch of changes for Bulia's bug 925875. Basically now the save dialog remembers which extension you've used. This also means that save works with non-standard extensions. Also, it will add extensions for you if you didn't put them on. Finally, the error dialog doesn't come up if you hit cancel in the 'Save As...' dialog. Whew! * src/preferences-skeleton.h: Added in settings to make the save extension global, along with whether or not the files should have extensions tacked on the end of them. 2004-03-31 Ted Gould * src/interface.cpp, src/interface.h, src/file.cpp: Adding a cute little dialog to tell you if you are about to overwrite a file you want to keep. This fixes bug #911237 2004-03-30 Jon Phillips * share/icons/icons.svg src/interface.cpp src/verbs.cpp src/verbs.h: Added rest of icons for the menu. I think they are a good start. There still needs to be continuity between styles, but at least all needed icons are present. I didn't create icons for elements that are going to be removed eventually. * share/tutorials/tipsandtricks.svg src/help.cpp src/interface.cpp: Added this tutorial so that people can consolidate their information onto this page. 2004-03-30 Ted Gould * src/file.cpp, src/file.h, src/dialogs/filedialog-win32.cpp, src/dialogs/filedialog.cpp, src/dialogs/filedialog.h src/extension/system.cpp, src/extension/system.h, src/extension/implementation/script.cpp: Making all of the file operations have lists of the extensions that can be used to save and open. This also fixes the bug which talks about mis-saving file without an error - there is an error message now. Probably not the most clear, but you won't miss it. 2004-03-29 Peter Moulder * src/helper/bezier-utils-test.cpp: Finish the sp_bezier_fit_cubic test. * src/dyna-draw-context.cpp, src/mod360.cpp, src/mod360.h, src/Makefile.am: Move mod360 to new files mod360.cpp, mod360.h. Add unit test for it. 2004-03-28 Bryce Harrington * inkscape.cpp, inkscape.h, xml/repr-io.cpp, xml/repr.h: Adding better error handling for the situation where the preferences.xml file is not successfully loaded. In this case, we want to suppress saving it, lest we overwrite the file with the default skeleton preferences. 2004-03-28 Jon Phillips * src/interface.cpp src/select-toolbar.cpp src/verbs.cpp src/verbs.h: Changed rotate verb to be SP_VERB_OBJECT_ROTATE_90_CW so that I can now install SP_VERB_OBJECT_ROTATE_90_CCW. * share/icons/icons.svg src/interface.cpp src/select-toolbar.cpp src/selection-chemistry.cpp src/selection-chemistry.h src/verbs.cpp src/verbs.h: Added rotation 90 degrees CCW to the menu, icons, and the interface. It was a pretty simple thing to do but was not available on the interface. 2004-03-28 MenTaLguY * src/sp-gradient.cpp: request SP_OBJECT_MODIFIED_FLAG if gradient stops are added or removed 2004-03-27 bulia byak * src/main.cpp: Removed redundancy in error messages, reworded some * src/verbs.cpp src/toolbox.cpp src/nodepath.cpp src/inkscape.cpp src/extension/internal/ps.cpp src/main.cpp: Typos, reported by Arpad Biro * AUTHORS: Added John Cliff, Fred (long overdue), Adib * src/widgets/gradient-vector.cpp: John Cliff: multistage gradient editor * src/splivarot.cpp src/style.cpp src/xml/repr-util.cpp src/sp-polygon.cpp: Adib's svgostringstream patches * src/toolbox.cpp: All default buttons work correctly with undo, use freezing to prevent double changes; tooltip edits, formatting; defocusing on all widgets * src/display/nr-arena-image.cpp: Tentative fix for 906376: image always uses _P_P_P_ compositing * src/dialogs/item-properties.cpp: Refixing the slider 0.99 problem properly, reported by simarilius * src/help.cpp src/help.h src/interface.cpp: Expanded and split tutorial, all tutorials in submenu * src/sp-text.cpp: Do not write dx/dy if they only contain 0s * src/verbs.cpp src/verbs.h src/splivarot.cpp src/splivarot.h src/shortcuts.cpp: Inset/outset by pixels: commands, keys * src/preferences-skeleton.h: Default nudge 2pt * src/event-context.cpp: Increased accelerated-scroll delay * src/sp-text.cpp,h src/text-context.cpp: Clicking positions cursor closest to the click point * src/extension/internal/ps.cpp: Print dialog transient; Enter activates print; patches from sodi to flush stream and add boundingBox to PS output * src/dialogs/xml-tree.cpp: XML editor watches desktop change * src/sp-root.cpp: Fix from sodi: default preserveAspectRatio value * src/libnrtype/nr-type-w32.cpp: Fix for 915440 (from sodi) 2004-03-27 Peter Moulder * src/dyna-draw-context.cpp (sp_dyna_draw_context_set): Tweak angle setting: prefer 0.0 instead of 360.0. * src/dyna-draw-context.h, src/dyna-draw-context.cpp: Cleanup: Greater conformance to CodingStyle. Mostly whitespace changes. 2004-03-24 Ted Gould * src/extension/db.[ch]: Adding in functions to get lists of input and output extensions for the file dialogs 2004-03-25 Alexander Clausen * src/inkview.cpp Fix inkview crash on startup 2004-03-24 Ted Gould * Minor changes to get distcheck to work. 2004-03-24 Peter Moulder * src/draw-context.h, src/draw-context.cpp: Cleanup: greater conformance to CodingStyle. Mostly whitespace changes. 2004-03-23 Peter Moulder * src/widgets/sp-widget.h, src/widgets/sp-widget.cpp (sp_widget_new_repr): Remove this unused function. * src/libnrtype/nr-rasterfont.cpp (nr_rasterfont_ensure_glyph_slot): Address compiler warning. * src/seltrans.cpp (sp_sel_trans_ungrab): Disable the persistent snapping stuff added 2004-02-19. * src/desktop-events.cpp (sp_dt_ruler_event): Minor cleanup. 2004-03-19 bulia byak * src/selection-chemistry.cpp: Prevent it from scaling above 1e6 pt * src/preferences-skeleton.h src/dialogs/dialog-events.cpp: "Skip taskbar" hint for dialogs * src/selection-chemistry.cpp: Patch for copying gradients from johncliff * src/event-context.cpp: Increased accelerated-scroll delay * nr-pixops.h: INK_COMPOSE: Always-visible inversion compose method * sp-gradient.cpp: Default linear gradient goes through center * nr-plain-stuff.cpp: Tweaked checkerboard size and color * gradient-position.cpp: Inverse colors for handles, axes, and bbox; dragging snaps with Ctrl; radius handle in radial gradient * src/sp-rect.cpp src/sp-path.cpp: Finished fixing 918478 * src/gradient-chemistry.cpp src/widgets/gradient-vector.cpp: Fix for 902319, remove some debug output * src/toolbox.cpp: Polygon mode off by default * src/toolbox.cpp: Crash fix, reported by David Christian Berg * src/radial.h src/nodepath.cpp: Moved Radial:: to nodepath.h for now * stringstream.h: New stream class for serialization * svg-path.cpp: Use new stream class * src/toolbox.cpp: Smarter Sharpness, r1 and r2 undistinguishable for the user * src/svg/svg-path.cpp: Restore mising break (fixes smearing for paths with h and v) * src/dialogs/align.cpp src/dialogs/transformation.cpp: Reverse pjrm's change in delete handlers (fixes crash on closing) * src/splivarot.cpp: Simplify threshold depends on selection size, not item size * src/select-toolbar.cpp: Reordered select toolbar buttons * icons.svg: Reworked selector toolbar icons 2004-03-17 Ted Gould * src/extension/db.h, src/extension/db.cpp, src/extension/extension.cpp, src/extension/system.cpp: Changing the database stuff to be C++ object oriented (actually it wasn't OO before). But this helps as we start to connect to the File dialogs. 2004-03-16 Ted Gould * src/file.cpp, src/file.h, src/extension/Makefile.am, src/extension/extension.cpp, src/extension/extension.h, src/extension/menu.cpp, src/extension/system.cpp, src/extension/implementation/implementation.cpp, src/extension/implementation/implementation.h, src/extension/implementation/script.cpp, src/extension/implementation/script.h: A few of changes. 1) removed the extensions menu stuff from the build as it seems no one is using it. 2) Changing Filter to Effect internally to the extensions 3) Adding an exception to the save and open extensions to signal a failure. There is no way to test this currently, but it doesn't break anything. 2004-03-16 jon phillips * share/icons/icons.svg: Added a couple of icons but haven't linked them to the code yet. * share/tutorials/elementsofdesign.svg: Added the first part of the basic graphics for this tutorial. I added boxes for the rest, which I need to finish. I need to use Bulia's tutorial top part to keep the tutorials consistent. 2004-03-16 bulia byak * nr-type-directory.cpp: Cache NRTypeFaceDef *, not NRTypeFace *, fixes 916155 * src/arc-context.cpp src/arc-context.h src/event-context.h src/rect-context.cpp src/spiral-context.cpp src/spiral-context.h src/star-context.cpp src/star-context.h src/toolbox.cpp: John Cliff's patch #2 for shape tools, with my fixes * icons.svg: Tweaks: stroke to curve, flip/rotate, text * src/sp-ellipse.cpp: Fixes: SPArc never writes ; in d=, no L to the center when start==end * src/nodepath.cpp: Fix for 916119 * src/widgets/icon.cpp: Remove not-enough-room-for-icon warning * src/dialogs/text-edit.cpp src/dialogs/dialog-events.cpp: Do not eat key events in the text view 2004-03-15 Peter Moulder * src/widgets/gradient-vector.cpp (sp_gradient_vector_widget_load_gradient, sp_gradient_vector_color_dragged): Cleanup: Convert to table-driven style. * src/style.cpp (sp_style_read_from_object): Additional check. * src/rect-context.cpp: Cleanup: Coding Style conformance, move declarations to first use. * src/sp-gradient.cpp (sp_gradient_rebuild_vector): Add assertion. 2004-03-15 Ted Gould * src/extension/extension.cpp: Adding in some comments for my previous checkin and also adding in the integer functions that I forgot (but aren't used yet). 2004-03-14 Jon Phillips * src/toolbox.cpp src/verbs.cpp src/interface.cpp share/icons/icons.svg: Added all the icons in the VIEW menu. They might need some tweaking, but its a start. Also cleaned up some coding conventions for these files. 2004-03-14 Bryce Harrington * src/view.cpp: Adding an accumulator function for checking return values of shutdown signal handlers, so that if any one of them returns a value indicating an abort of the shutdown, the shutdown process will be aborted. 2004-03-14 Ted Gould * src/extension/extension.cpp, src/extension/extension.h, src/extension/internal/ps.cpp: Adding in parameters for extensions. This will make it so that extensions can have easy settings that are used. They are not currently persistent - but that will be a future feature. 2004-03-14 MenTaLguY * src/ast/*: more AST sketching * src/xml/repr.cpp: existing listeners were getting dropped when new listeners were added; this fix makes the behavior documented in bug #896706 a little worse, but fixes bug #915913 * src/sp-use.cpp: SPUse does not need to manually detach its child anymore, so now it doesn't * src/sp-object.cpp: detach our SPRepr listener before we start releasing our children, which makes listener removal faster (since we are then always removing from the beginning of the listener list -- i.e. removing in roughly the order in which they were added) This should help bug #896706 a little more. * src/event-context.cpp, src/node-context.cpp, src/rect-context.cpp, src/sp-object.cpp, src/sp-offset.cpp, src/dialogs/desktop-properties.cpp, src/dialogs/xml-tree.cpp, src/widgets/sp-widget.cpp, src/widgets/sp-xmlview-attr-list.cpp, src/widgets/sp-xmlview-tree.cpp, src/xml/repr-private.h, src/xml/repr-util.cpp, src/xml/repr.cpp, src/xml/repr.h: SPObjects now ::write() immediately on attribute changes, if those changes are "interactive" (i.e. from the XML editor); this fixes the problem with SPStar's points= attribute updating (bug #910142) * src/sp-clippath.cpp, src/sp-mask.cpp, src/sp-namedview.cpp, src/sp-root.cpp, src/sp-symbol.cpp: simplified SPObject::remove_child handlers, focusing particularly on making them not rely on the repr still being attached * src/sp-object.cpp: SPObject::remove_child is now invoked after the repr has been removed (fixes bug #916188) * src/text-context.cpp: don't unparent the repr if it's already been unparented (fixes bug #915435) 2004-03-14 rejon * src/toolbox.cpp share/icons/icons.svg: Cleaned the file up to coding standards. I also have begun to add new icons to our program. 2004-03-13 MenTaLguY * src/document.cpp: bumped the update limit on documents a bit (bug #896076) * src/sp-text.cpp: SPString now copes with parents that don't have style information (comment on bug #896706) * src/xml/repr.cpp, src/xml/repr-private.h: adding listeners is now O(1), which should make files which make heavy use of more tolerable; I decided to add an extra "last" pointer rather than just prepending to the list (which would have reversed its order, and make the common case for removal traverse the entire list -- removal is still O(N) overall, but at least this way we usually hit the best-case) (bug #896076) 2004-03-11 bulia byak * src/sp-item.h src/sp-item.cpp: Restore i2root_affine: same as i2doc but without c2p, fixes 914039 * src/selection-chemistry.cpp: Grouping z-order fix * src/path-chemistry.cpp: Combine/Break Apart fixes: preserve z-order and parent, diagnostics, multiple selected, cleanup, fixes * src/libnrtype/nr-type-directory.cpp: Fix win32 memory hog (unfreed g_ascii_tolower in ink_strstr), implement caching of looked-up faces 2004-03-10 bulia byak * src/sp-offset.cpp: Coalesce threshold depends on item size (less transform), guarding against invalid item bbox, comments * src/sp-text.cpp: TODO comment for effective_dx/dy * src/splivarot.cpp src/preferences-skeleton.h: Inset/Outset handle multiple selections, preserve z-order and grouping; Simplify handles multiple selections, preserves z-order and grouping, threshold taken from prefs, accelerated * src/node-context.cpp src/text-context.cpp: Disregard groups when clicking * src/shortcuts.cpp: Ctrl+/ for division, ctrl-alt-/ for slice (cut path), bigger window for keys * src/rect-context.cpp src/rect-context.h: Knotholder, signals and listeners, selection by click, tolerance, Esc deselects * src/toolbox.cpp: Rect toolbar: Spinbuttons cosmetics, keys, defocusing, tooltips, fixes * src/shortcuts.cpp: Ctrl+e zooms to window, export is ctrl+shift+e now * src/selection-chemistry.cpp: Z-order fixes: Raise rewritten, diagnostics, relative raise/lower only for overlapping objects * src/verbs.cpp: raise/lower commands named more consistently * src/sp-item.cpp src/sp-item.h: Sorting function for items * src/selection-chemistry.cpp: fix for 910017 * src/splivarot.cpp: Remove fill for slice 2004-03-09 rejon * samples: Moved the contents of samples into the proper share dirs. * share/tutorials/tutorial.svg: Moved the default tutorial.svg to this location. It was in the wrong place. * share/tutorials/elementsofdesign.svg src/help.cpp src/interface.cpp: Added the textual gloss of this new tutorial. I need to add some more graphics to it. But I just wanted to first of all flesh out the document so that others could chunk in graphics and so forth. 2004-03-09 MenTaLguY * src/ast/*: more AST work * src/sp-text.cpp: fixed uninitialized variable * src/sp-text.cpp: rewrote recursive character-counting algorithm 2004-03-08 MenTaLguY * src/sp-text.cpp: fixes for initialization and updating of SPString 2004-03-07 MenTaLguY * src/sp-item.cpp: the item's arenaitems shouldn't be destroyed until its children have had a chance to clean up * src/sp-object.cpp: fix sp_object_reorder() to correctly handle next == NULL * src/sp-item.cpp, src/sp-object-group.cpp, src/sp-object-repr.cpp, src/sp-object.cpp, src/sp-object.h, src/sp-text.cpp, src/sp-use.cpp: finished transition to SPObject::children * src/sp-text.cpp: reworked SPTSpan a bit so that it copes with the child changes a little better with respect to SPTSpan::string 2004-03-06 MenTaLguY * src/ast/*: initial work on AST code * src/libnr/nr-convex-hull-ops.h, src/libnr/nr-convex-hull.h, src/libnr/nr-matrix-fns.h, src/libnr/nr-maybe.h, src/libnr/nr-rect-ops.h: basic cleanups and work on NR::ConvexHull * src/document.cpp, src/gradient-chemistry.cpp, src/selection-chemistry.cpp, src/selection.cpp, src/sp-clippath.cpp, src/sp-defs.cpp, src/sp-defs.h, src/sp-gradient.cpp, src/sp-gradient.h, src/sp-item-group.cpp, src/sp-item-group.h, src/sp-item.cpp, src/sp-item.h, src/sp-mask.cpp, src/sp-namedview.cpp, src/sp-object-group.cpp, src/sp-object-group.h, src/sp-object-repr.cpp, src/sp-object.cpp, src/sp-object.h, src/sp-pattern.cpp, src/sp-pattern.h, src/sp-root.cpp, src/sp-text.cpp, src/sp-text.h, src/widgets/gradient-vector.cpp: children are now uniformly handled by SPObject 2004-03-05 bulia byak * src/desktop.cpp src/preferences-skeleton.h: Autoscroll now accepts distance-from-edge parameter, may be negative, default is options.autoscrolldistance = -10 * src/style.cpp src/style.h src/document.cpp: Store uri for paintsever and serialize it back instead of paintserver id. find_items functions do not find insensitive items by default. * src/sp-item.cpp: tentative fix: do not remove style attribute if write_difference fails or object has no parent * src/desktop-events.cpp: transientize guide dialog * splivarot.cpp, livarot/*: fred's new rasterizer, fixes * src/widgets/gradient-vector.cpp: fix 906301 * src/dialogs/text-edit.cpp: do not rebuild text of object if not changed in the dialog, fixes 906279 * src/selection.cpp: suppress a few meaningless warnings * src/xml/repr.cpp: fix for 907056, 906222 * about.svg: redrawn from rejon's draft, with a highlight on lauris :) * libnrtype: Full font-variant, font-weight, font-stretch support. Better family and style matching algorithm. Support for generic families and multiple family specifications. Xft sees all font styles, reads pfa fonts again. Font styles are sorted in the list and use the native style names with Xft. * src/sp-text.cpp,h src/text-context.cpp: Keys, function for adjusting linespacing * keys.xml,svg,html: Linespacing keys 2004-03-05 Peter Moulder * src/draw-context.cpp (fit_and_split, sp_pencil_context_root_handler, spdc_add_freehand_point): * src/dyna-draw-context.cpp (sp_dyna_draw_timeout_handler, sp_dyna_draw_context_root_handler, fit_and_split_line, fit_and_split_calligraphics): Cleanups. * src/Makefile.am: Fix missing backslash at end of line. 2004-03-05 Ted Gould * src/extension/impelementation/implementation.cpp, src/extension/impelementation/implementation.h, src/extension/impelementation/script.h, src/extension/impelementation/script.cpp: Adding in some more comments and doing some general cleanup of the code. It is getting better everyday. 2004-03-05 Ted Gould * src/Makefile.am: Adding back in inkview. This was fixed by Bob, but he didn't add it back in. It's back in the build now. Thanks Bob for fixing my mistakes! 2004-03-04 Ted Gould * src/extension/extension.h: Cleaning up and adding comments. 2004-03-04 Peter Moulder * src/livarot/Shape.cpp (Distance): Convert to DistanceLE(p, d) function returning true iff Distance(p) <= d. (Saves 7% of total inkscape CPU time for "big scribbles" test cases.) Update callers. 2004-03-04 Ted Gould * src/extension/system.cpp, src/extension/system.h, src/extension/extension.cpp, src/extension/extension.h, src/extension/init.cpp, src/extension/internal/gnome.cpp, src/extension/internal/ps.cpp, src/extension/internal/svg.cpp, src/extension/internal/win32.cpp: Making it so that an implementation is a require element to build an extension. This means that checking for one in every other function is not required. Makes a touch more sense. 2004-03-04 Jon A. Cruz * src/file.cpp, src/interface.cpp, src/inkscape-stock.cpp, src/sp-image.cpp, src/helper/png-write.cpp, src/widgets/icon.cpp: Fixed filename/URI translation to keep UTF-8 internally. 2004-03-03 Peter Moulder * src/seltrans.cpp (sign): New function to replace `FOO / fabs(FOO)' expressions in various places. * src/seltrans.cpp (sp_sel_trans_stretch_request, sp_sel_trans_stretch): Fix #906221. Also change the behaviour to allow growing. * src/libnr/nr-scale.h: operator[]: new versions returning writable reference. * src/desktop-snap.h, src/desktop-snap.cpp (sp_desktop_vector_snap_list): Change final arg from NR::Point to NR::scale. Update callers. 2004-03-02 Ted Gould * src/Makefile.am, src/print.cpp, src/extension/db.cpp, src/extension/db.h, src/extension/extension.cpp, src/extension/extension.h, src/extension/system.cpp, src/extension/system.h, src/extension/init.cpp, src/extension/menu.cpp, src/extension/impelementation/Makefile.am, src/extension/impelementation/implementation.cpp, src/extension/impelementation/implementation.h, src/extension/impelementation/script.h, src/extension/impelementation/script.cpp, src/extension/internal/gnome.cpp, src/extension/internal/gnome.h, src/extension/internal/ps.cpp, src/extension/internal/ps.h, src/extension/internal/svg.cpp, src/extension/internal/svg.h, src/extension/internal/win32.cpp, src/extension/internal/win32.h: Turning the extensions stuff into having C++ objects instead of GTK+ objects. This affected a lot of files. 2004-03-02 Peter Moulder * src/helper/curve.h, src/helper/curve.cpp (sp_curve_new_from_foreign_bpath and many static functions): Mark various ArtBpath[] parameters as not being written to. * src/draw-context.cpp (fit_and_split): Fix to fix to edge case in freehand tool. (Hopefully to be replaced by different approach.) * src/dialogs/transformation.cpp (sp_transformation_move_apply, sp_transformation_scale_apply, sp_transformation_rotate_apply, sp_transformation_skew_apply): Remove unused `copy' parameter. Update caller. * src/dialogs/align.cpp, src/dialogs/transformation.cpp: Cleanups. * src/display/nr-arena-shape.cpp (nr_arena_shape_set_path): Remove affine argument (all current callers were passing NULL) and unused `lieutenant' argument. Update callers. * src/selection-chemistry.h, src/selection-chemistry.cpp (sp_selection_delete, sp_selection_duplicate, sp_edit_clear_all, sp_edit_select_all, sp_selection_group, sp_selection_ungroup, sp_selection_raise, sp_selection_raise_to_top, sp_selection_lower, sp_selection_lower_to_bottom, sp_selection_cut, sp_selection_copy, sp_selection_paste, sp_selection_paste_style): Remove unused parameters. Update callers. 2004-03-01 Nathan Hurst * src/draw-context.cpp: Fixed edge case in freehand tool. Added comment about curve fitting. 2004-03-01 Peter Moulder * src/sp-guide.cpp (sp_guide_set_property, sp_guide_get_property): Minor cleanups. * src/interface.h, src/interface.cpp (sp_ui_new_view, sp_ui_new_view_preview): Make static. * src/dyna-draw-context.cpp (sp_ddc_defaults): * src/rect-context.cpp (sp_rc_defaults): Cleanup: Use table and loop instead of copy&paste. * configure.in: If -Wno-unused-parameter isn't recognized (g++ 3.2 and earlier) then use -Wno-unused. * src/libnr/nr-point.h: NR::Point: Add explicit copy constructor and operator= in the hope of fixing #907059. * src/desktop-events.cpp (sp_dt_ruler_event): NR::Point'ification. * src/selection.cpp (sp_selection_item_selected): * src/seltrans.cpp (sp_sel_trans_stretch_request): * src/display/nr-arena-shape.cpp (shape_run_A8_OR): * src/livarot/PathStroke.cpp (DoJoin): * src/livarot/ShapeMisc.cpp (ReFormeBezierTo): Address compiler warnings. 2004-02-28 Jon Phillips * share/*: Move extensions, icons, and made a new folder screens for screens that are pulled up in using inkscape. Please test this heavily as it implements the most troublesome chunks of the directory reorganization. * Makefile.am, Makefile.mingw, config.h.mingw, configure.in: Changed to coincide with the new changes. 2004-02-28 Nathan Hurst * src/nodepath.cpp,h: Moved radial to class Radial. Moved NodePath into namespace Path and partially classified. 2004-02-28 Peter Moulder * src/nodepath.cpp: Mark several functions as static. * src/dialogs/stroke-style.cpp: Rename DEBUG_MARKERS ifdef to WITH_MARKER_GUI, and make more things conditional on it. (Fixes failing assertion for the !defined case.) 2004-02-27 Alexander Clausen * src/desktop-events.cpp: fix my last fix *sigh* * src/inkview.cpp: fix inkview crash when none of the files on commandline exist, add very basic error reporting 2004-02-27 Peter Moulder * src/dialogs/stroke-style.cpp (sp_stroke_style_set_marker_buttons): Cleanup: restructure. * src/dialogs/Makefile.am: in-dt-coordsys.cpp, in-dt-coordsys.h: New files. * src/dialogs/xml-tree.cpp (set_dt_select): Fix bug when clicked on a shape that's a descendent of a node: don't try to select it in the canvas. 2004-02-26 Peter Moulder * src/dialogs/stroke-style.cpp: Fix: free marker_xpm[i] instead of marker_xpm. Misc cleanups. * src/Makefile.am: New files extract-uri.cpp, extract-uri.h. New unit test extract-uri-test.cpp. * src/style.cpp (extract_uri): Move to src/extract-uri.cpp, and fix. * src/Makefile.am (inkscapelib_src): marker-status.h, marker-status.cpp: New files. * src/dialogs/stroke-style.cpp, src/sp-shape.cpp, src/style.cpp: Change marker debugging status messages from conditional g_message to unconditional marker_status call. * src/dialogs/stroke-style.cpp (marker_id_to_string): Remove unused function. 2004-02-24 Alexander Clausen * src/desktop-events.cpp: Fix crash when opening the guide dialog for the second time 2004-02-24 bulia byak * src/helper/sodipodi-ctrlrect.cpp: A smart always-visible inversion for ctrlrect border * src/select-toolbar.cpp: Fix for 873723 * src/style.h src/style.cpp: write_difference only writes what is .set in the target style * src/selection-chemistry.cpp: Paste style merges the style of the clipboard with the object's current style * src/xml/repr-io.cpp: Do not cut leading/trailing whitespace on text nodes, only reject all-whitespace nodes * src/pixmaps/handles.xpm src/seltrans.cpp src/knot.cpp src/nodepath.cpp src/helper/sodipodi-ctrl.cpp: Changed xor compositing for ctrls, made seltrans handles inverse, tweaked knot colors * doc/keys-html.xsl doc/keys.html: keys.html now validates * src/desktop.cpp src/desktop.h: New function to autoscroll desktop so a point becomes visible * src/rubberband.cpp src/select-context.cpp src/nodepath.cpp: Use the new function to scroll desktop to a point * src/desktop.cpp src/preferences-skeleton.h: options.autoscrollspeed 2004-02-24 Peter Moulder * src/libnr/nr-matrix.h: Add `explicit' to Matrix constructors from rotate/scale/translate, to reduce the number of mysterious implicit conversions used in client code. Don't #include nr-rotate-ops.h, nr-scale-ops.h, nr-translate-ops.h. * src/selection-chemistry.cpp (sp_selection_apply_affine): Change final argument from double[6] to NR::Matrix. Update callers. (sp_selection_scale_relative): Change from dx,dy to NR::scale argument. Update callers. (sp_selection_scale, sp_selection_scale_times): Cleanup. * src/libnr/Makefile.am: New files nr-rotate-test.cpp, nr-scale-test.cpp, nr-translate-test.cpp. * src/libnr/nr-matrix-test.cpp: Move lots of things to the new files. Add tests for the operator* additions of 2004-02-23. Don't #include .cpp files where linking against them suffices. * src/livarot/Makefile.am (Path_test_LDADD): Fix order of libs. * src/select-toolbar.cpp (sp_object_layout_any_value_changed): NR::Matrix'ification. 2004-02-23 MenTaLguY * src/selection-chemistry.cpp, src/selection-chemistry.h, src/seltrans.cpp, src/seltrans.h, src/verbs.cpp, src/dialogs/transformation.cpp, src/libnr/nr-point-fns.h, src/libnr/nr-point.h, src/libnr/nr-rect.h: more NRPoint removal 2004-02-23 Peter Moulder * src/sp-item-transform.cpp (sp_item_rotate_rel): Use NR::Rect and .midpoint. * src/dropper-context.cpp (sp_dropper_context_root_handler): * src/sp-text.cpp (sp_string_set_shape): Cleanup: use translate rather than setting individual matrix elements. * src/libnr/nr-matrix-ops.h (operator*: Matrix*rotate, translate*scale, scale*translate, Matrix*scale): New functions. 2004-02-22 Ted Gould * src/extension/Makefile.am, src/extension/implementation/Makefile.am, src/Makefile.am, po/POTFILES.in, po/*.po (because of previous change): Okay, I screwed up. Here are some distcheck fixes for various things. Still not entirely clean. But these are much closer than we were. 2004-02-22 Ted Gould * src/modules -> src/extensions: Changing the directory name so that it fits the new naming conventions that we're working with. 2004-02-23 Peter Moulder * src/desktop.cpp (sp_desktop_init, sp_desktop_set_display_area): * src/libnrtype/nr-font.cpp (nr_font_generic_glyph_outline_get): * src/libnrtype/nr-typeface.cpp (nr_font_new_default): Don't use implicit NR::Matrix conversions. * src/libnr/nr-translate-ops.h (operator!=): new. * src/sp-item.h, src/sp-item.cpp (sp_item_bbox_desktop): Add NR::Rect version. * src/inkview.cpp: Address compiler warning: declare is_jar iff it is defined, i.e. #ifdef WITH_INKJAR. * src/desktop-snap.cpp, src/desktop.h, src/object-edit.cpp, src/sp-root.cpp, src/livarot/PathConversion.cpp, src/widgets/sp-color-wheel.cpp: Add some #include's to reduce how much nr-matrix.h must pull in. * src/desktop-affine.cpp, src/knotholder.cpp, src/desktop-events.cpp, src/nodepath.cpp, src/sp-ellipse.cpp, src/sp-image.cpp, src/sp-item-notify-moveto.cpp, src/sp-rect.cpp, src/text-context.cpp: #include libnr/nr-matrix-ops.h. 2004-02-22 Ted Gould * doc/Makefile.am, po/POTFILES.in: keeping these up to date for distchecks. 2004-02-21 Ted Gould * extensions/txt2svg.inkmod, extensions/txt2svg.pl: Adding a script that Bryce wrote that will take in text. Plus the inkscape module file to make it so that you can open text files in Inkscape. 2004-02-21 MenTaLguY * src/xml/repr-util.cpp, src/xml/repr.h: added RDF namespace by default * src/inkscape.cpp, src/inkscape.h, src/widgets/sp-widget.cpp, src/inkview.cpp: nuked global 'inkscape' variable and replaced it with a module-local variable and an accessor function. * src/uri.h, src/uri.c: added native filename to/from thingy 2004-02-20 bulia byak * src/text-context.cpp: [shift+]alt+arrows to kern * src/sp-text.cpp,h: Complete support for dx/dy vectors, including inheritance as per SVG spec. Preserve dx/dy lists in editing. Function to adjust dx/dy by screen pixels. * src/svg/svg-length.cpp: Function to read length in absolute units only. Function to read a length into a float instead of SPSVGLength. Function to read a length vector into a list of SPSVGLength's. * src/sp-root.cpp src/sp-image.cpp src/sp-offset.cpp src/sp-spiral.cpp: Eliminated sp_svg_length_read_ldd calls and ugly repetitive unit checks, used sp_svg_length_read_[computed_]absolute instead. * doc/keys.xml doc/keys.html icons/keys.svg: Updated guide and grid shortcuts. Added paste in place, more notes. Added kerning keys and notes. * src/libnrtype/nr-type-ft2.cpp: Crash fix, patch 895344. * src/sp-namedview.cpp src/sp-namedview.h: Proper showguides support, functions for toggling guides and grid. * src/desktop-events.cpp: Turn showguides on when creating a new guide. * src/verbs.cpp: Used the new toggle functions for showguides and showgrid. * src/interface.cpp: Added Guides to View. * src/xml/repr-util.cpp: sp_repr_get_boolean fix. * src/dialogs/desktop-properties.cpp: Reenabled showguides support, added namedview listener to reflect outside changes to the namedview. 2004-02-20 Peter Moulder * Lots of files: Refine #include's according to reorganization of libnr/nr-types.h and libnr/nr-matrix.h. * src/libnr/Makefile.am (libnr_a_SOURCES): nr-coord.h nr-dim2.h nr-i-coord.h nr-matrix-ops.h nr-point-l.h nr-point-ops.h nr-point.h nr-rect-l.h nr-rotate.h nr-rotate-ops.h nr-scale-ops.h nr-scale.h nr-translate-ops.h nr-translate.h: New files; code moved from nr-types.h and nr-matrix.h. * src/libnr/nr-matrix.h: * src/libnr/nr-types.h: #include the new files. * src/desktop-affine.h, src/desktop-affine.cpp (sp_desktop_w2d_xy_point, sp_desktop_d2w_xy_point, sp_desktop_w2doc_xy_point, sp_desktop_doc2w_xy_point, sp_desktop_d2doc_xy_point, sp_desktop_doc2d_xy_point, sp_desktop_root2dt_xy_point, sp_desktop_dt2root_xy_point): Remove old NRPoint versions of these functions. * src/select-toolbar.cpp: * src/toolbox.cpp: * src/widgets/spw-utilities.cpp: Remove unused #include sp-item-transform.h. * src/sp-item-transform.cpp (sp_item_rotate_rel): NR::Matrix'ification. * src/sp-item-transform.h, src/sp-item-transform.cpp (sp_item_scale_rel, sp_item_skew_rel): Remove these unused functions. * src/sp-item-transform.h, src/sp-item-transform.cpp (sp_item_rotate_rel, sp_item_move_rel): Change from pair of points to NR::rotate and NR::translate respectively. Update callers. * src/node-context.cpp (sp_node_context_root_handler): * src/rect-context.cpp (sp_rect_context_root_handler): * src/zoom-context.cpp (sp_zoom_context_root_handler): NR::Point'ification and var cleanup. * src/event-context.cpp (sp_event_context_private_root_handler, set_event_location): * src/dialogs/align.cpp (sp_align_arrange_clicked): NR::Point'ification. * src/desktop.h (sp_desktop_zoom_relative_keep_point, sp_desktop_scroll_world): Add NR::Point version. 2004-02-19 Johan Ceuppens * src/inkjar/jar.cpp, src/inkjar/jar.h src/inkview.cpp: inkview accepts .jar archives of SVG files on the command line. 2004-02-19 Peter Moulder * src/Makefile.am: sp-item-rm-unsatisfied-cns.cpp, sp-item-rm-unsatisfied-cns.h, sp-guide-attachment.h, sp-item-notify-moveto.cpp, sp-item-notify-moveto.h, sp-guide-constraint.h, satisfied-guide-cns.cpp, satisfied-guide-cns.h, sp-item-update-cns.cpp, sp-item-update-cns.h: New files. * src/desktop-events.cpp (sp_dt_guide_event): * src/seltrans.cpp (sp_sel_trans_ungrab): * src/sp-guide.cpp (sp_guide_moveto, sp_guide_remove): * src/sp-guide.h: * src/sp-item.cpp (sp_item_set): * src/sp-item.h: Make snap-to-guide more persistent. (Still not saved to XML though.) * src/sp-spiral.cpp (sp_spiral_fit_and_draw, sp_spiral_set_shape): Address NRPoint warning. * src/widgets/icon.cpp (sp_icon_paint): Cleanup. * src/libnr/nr-types.h: Change deprecated-cast warning from runtime to compile-time. * src/helper/sp-canvas.h, src/helper/sp-canvas.cpp (sp_canvas_world_pt_inside_window): New function. 2004-02-18 MenTaLguY * src/widgets/icon.cpp, src/widgets/icon.h: rewrote to use gdk for compositing; now it looks tolerable with ANY theme! * src/dialogs/item-properties.cpp: slight stabs at implementing "visible" * src/libnr/nr-types.h: added warning for deprecated casts 2004-02-18 Peter Moulder * src/dialogs/align.cpp (sp_align_arrange_clicked): Cleanup. * src/sp-item-transform.cpp (sp_item_move_rel): NR::Matrix'ification. * src/desktop-events.cpp (sp_dt_guide_event): Get guide line dialog working again: double-click on a guide to show the guide dialog. * src/utest/utest.h (UTEST_NAMED_ASSERT): Wrap this macro in static_cast(). 2004-02-17 MenTaLguY * src/interface.cpp: fixed signal connection in recent items menu * src/file.cpp: fix compile and pass UTF-8 "URIs" down to module code 2004-02-17 Peter Moulder * src/sp-guide.h, src/sp-guide.cpp (sp_guide_moveto, sp_guide_position_set): Combine into a single sp_guide_moveto routine accepting a `commit' argument. Update callers. 2004-02-16 MenTaLguY * src/interface.cpp: fixed bug with underscores in 'open recent' filenames * src/libnr/nr-rect.h, src/libnr/nr-types.h: moved NR::Rect to nr-rect.h, minor updates * src/libnr/nr-maybe.h: continued work on maybe implementation * src/libnr/nr-types.h, src/libnr/nr-rect.cpp, src/libnr/nr-maybe.h, src/seltrans.cpp: started on revising the NR::Rect stuff, and introduced NR::ConvexHull 2004-02-16 Peter Moulder * src/xml/repr.cpp (sp_repr_document_root): Fix typo in most recent commit. 2004-02-14 MenTaLguY * src/svg/svg-path.cpp: switched to locale-safe iostreams-based path serialization. * src/xml/repr-io.cpp, src/xml/repr.cpp, src/widgets/sp-xmlview-tree.cpp, src/widgets/sp-xmlview-content.cpp, src/dialogs/xml-tree.cpp: basic support for XML comments 2004-02-14 bulia byak * src/dialogs/dialog-events.cpp: Added UTILITY hint to sp_transientize() * po/fr.po: Update from f.rodrigo@tuxfamily.org * src/interface.cpp: Fix for underscore in the recent files menu, by alxrem * src/event-context.cpp src/preferences-skeleton.h: Accelerated scrolling by Ctrl-arrows * src/event-context.cpp: Ctrl-middle-click zooms in * doc/keys.xml doc/keys-svg.xsl doc/keys-html.xsl doc/keys.html icons/keys.svg: Updated middle and right buttons scroll/zoom, cosmetics * src/shortcuts.cpp: Menu shortcut fix * src/verbs.cpp,h: New verb: deselect * src/selection.cpp,h: Removed unused function * src/interface.cpp: Removed Edit/Clear All, added Edit/Deselect. Comment fix * src/toolbox.cpp: Spelling fix: symmetric, not symmetrical * src/desktop.cpp,h: sp_desktop_point(): returns mouse point in document coordinates * src/selection-chemistry.cpp,h: sp_selection_paste obeys in_place parameter * src/verbs.cpp src/verbs.h src/shortcuts.cpp: Paste in place verb, shortcut * src/interface.cpp: Paste In Place command in Edit * src/selection-chemistry.cpp: Toolbar message fix 2004-02-14 MenTaLguY * src/libnr/nr-types.h: added intersects() and contains() tests for points and rects 2004-02-13 Peter Moulder * src/selection.cpp (sp_selection_snappoints): * src/sp-image.cpp (sp_image_snappoints): * src/sp-item.cpp (sp_item_private_snappoints): Don't use more than two opposite points of bounding box. * src/seltrans.cpp (sp_show_handles): Add precondition !seltrans.empty. * src/proofs: Update accordingly. * src/seltrans.cpp: Change seltrans from pointer to reference in several places. 2004-02-13 Johan Ceuppens * src/inkjar/{jar.cpp,jar.h}: changed some file offsets, uncompressing multiple files in a jar works now. There is an improved testing program at the end of jar.cpp. 2004-02-12 Peter Moulder * src/seltrans.cpp (sp_sel_trans_update_volatile_state): Minor cleanups. * src/desktop-snap.h, src/desktop-snap.cpp (sp_desktop_horizontal_snap, sp_desktop_vertical_snap, sp_desktop_horizontal_snap_list_scale, sp_desktop_vertical_snap_list_scale, sp_desktop_horizontal_snap_list_skew, sp_desktop_vertical_snap_list_skew): Remove these now-unused functions. * src/arc-context.cpp (sp_arc_drag): * src/rect-context.cpp (sp_rect_drag): Simplification: use sp_desktop_dim_snap instead of sp_desktop_horizontal_snap / sp_desktop_vertical_snap. * src/desktop-snap.cpp (sp_desktop_vector_snap): Minor cleanups. * src/libnr/Makefile.am, src/libnr/nr-point-fns-test.cpp: New unit test file nr-point-fns-test.cpp. * src/libnr/nr-point-fns.h, src/libnr/nr-point-fns.cpp (unit_vector): New function. * src/livarot/Path.h: Trim unnecessary includes. * src/livarot/LivarotDefs.h: #include (moved from Path.h). * src/livarot/PathOutline.cpp, src/livarot/PathSimplify.cpp, src/livarot/PathStroke.cpp, src/sp-offset.cpp: #include libnr/nr-point-fns.h. 2004-02-12 MenTaLguY * src/xml/repr-util.cpp, src/xml/repr.h: pruned some obsolete functions 2004-02-12 Johan Ceuppens * configure.in src/Makefile.am: --with-inkjar (default no) * src/inkjar/Makefile.am src/inkjar/jar.cpp src/inkjar/jar.h: inital import of libinkjar, this can be moved to LGPL after rewriting the macros. 2004-02-11 Peter Moulder * src/seltrans.cpp (sp_sel_trans_handle_new_event, sp_sel_trans_handle_request): NR::Point'ification. * src/seltrans-handles.cpp, src/seltrans-handles.h, src/seltrans.cpp: Preserve constness of SPSelTransHandle's. * src/sp-item.h, src/sp-item.cpp (sp_item_set_item_transform): Make static. Use NR::Matrix, and avoid NULL special case. Update callers. * src/sp-item.h, src/sp-item.cpp (sp_item_set_i2d_affine): Get rid of NRMatrix version. Calculate 1.25 directly rather than less accurate reciprocal of 0.8. * src/libnr/nr-matrix.h, src/libnr/nr-matrix.cpp (matrix_equalp): New function. (assert_close): Use matrix_equalp. * src/seltrans.h, src/seltrans.cpp (sp_sel_trans_transform): Get rid of non-NR::Point version. Make affine argument const. Update callers. * src/desktop-events.cpp (sp_dt_guide_event): NR::Point'ification. * src/view.h (sp_view_set_position): Add NR::Point version. * src/desktop.h (sp_desktop_set_coordinate_status): Add NR::Point version. 2004-02-09 bulia byak * doc/keys.xml doc/keys-svg.xsl: Keys and Mouse Reference: source, SVG stylesheet * icons/keys.svg: Keys SVG chart (generated, do not edit) * icons/Makefile.am: Added keys.svg * src/help.cpp src/help.h src/interface.cpp: Added Keys and Mouse command * doc/keyboard-shortcuts.txt Obsoleted, removed * doc/keys-html.xsl doc/keys.html: Keys reference in HTML, stylesheet for HTML * doc/Makefile.am: updated * src/libnr/nr-pixblock.cpp: A better fix for 859364 * src/libnrtype/nr-rasterfont.cpp: Reverting my previous fix for 859364, a better one is in nr-pixblock.cpp * icons/tutorial.svg: Switched to Bitstream Vera, updated tutorial * src/file.cpp: Fix for save bug 891852 * src/preferences-skeleton.h: transientpolicy=1 again * src/nodepath.cpp: Ctrl-Alt-drag fix in point_line_closest() * src/select-toolbar.cpp: Small space before unit selector * src/widgets/paint-selector.cpp: Hidden buttons removed 2004-02-09 MenTaLguY * src/interface.cpp: disabled the autoraise checkbox on Windows * src/widgets/paint-selector.cpp, src/widgets/paint-selector.h: removed unused selector-type buttons (with Bulia) 2004-02-09 Jon A. Cruz * src/widgets/sp-color-wheel.h, src/widgets/sp-color-wheel.cpp, src/widgets/sp-color-wheel-selector.h, src/widgets/sp-color-wheel-selector.cpp, src/widgets/sp-color-gtkselector.cpp, src/widgets/sp-color-notebook.cpp Added new, smaller color wheel selector. 2004-02-09 Peter Moulder * src/desktop-affine.cpp, src/desktop-snap.cpp, src/desktop-snap.h, src/desktop.cpp, src/knotholder.cpp, src/nodepath.cpp, src/selection-chemistry.cpp, src/seltrans.cpp, src/seltrans.h, src/sp-ellipse.cpp, src/sp-image.cpp, src/sp-item.cpp, src/sp-item.h, src/sp-rect.cpp, src/sp-root.cpp, src/text-context.cpp, src/dialogs/xml-tree.cpp, src/libnr/Makefile.am, src/libnr/nr-matrix.cpp, src/libnr/nr-matrix.h, src/libnr/nr-types.h, src/libnrtype/nr-rasterfont.cpp, src/livarot/Path.h, src/livarot/PathConversion.cpp, src/livarot/PathSimplify.cpp, src/livarot/ShapeSweep.cpp, src/widgets/gradient-position.cpp, src/widgets/sp-color-wheel-selector.cpp, src/widgets/sp-color-wheel.cpp: Change matrices to be suitable for right multiplication. (Also miscellaneous cleanups as mentioned below.) * src/widgets/sp-color-wheel-selector.cpp (sp_color_wheel_selector_get_type): Address harmless warning: add value_table initializer. * src/display/nr-arena-group.h, src/display/nr-arena-group.cpp (nr_arena_group_set_child_transform): Add NR::Matrix version. * src/verbs.cpp: Add g++-2.95 portability for hash_map. (Still using hash_map, though, not yet GHashTable.) * src/uri-references.h (operator=): Remove definition, forcing link errors for accidental usage. * src/sp-chars.h, src/sp-chars.cpp (sp_chars_add_element): Add NR::Matrix version. * src/selection.cpp (sp_selection_snappoints): Performance fix: add just 4 corner points, not a thousand. * src/print.h, src/print.cpp (sp_print_bind): Add NR::Matrix version. * src/inkscape.cpp: #include sys/types.h, sys/stat.h. * src/desktop.h (SP_DESKTOP_ZOOM): Define in terms of expansion() function instead of implicit casting. * src/arc-context.cpp, src/document.cpp, src/draw-context.cpp, src/selection.cpp, src/selection.h, src/sp-ellipse.cpp, src/sp-gradient.cpp, src/sp-image.cpp, src/sp-namedview.cpp, src/sp-offset.cpp, src/sp-rect.cpp, src/sp-spiral.cpp, src/sp-star.cpp, src/sp-text.cpp, src/bonobo/canvas-translator.cpp: Cleanups: greater conformance to Coding_Style, combine declaration and first assignment of some vars. 2004-02-08 MenTaLguY * src/interface.cpp: added "Autoraise Dialogs" menu item to toggle the transient policy thing 2004-02-08 Bryce Harrington * src/sp-namedview.cpp: This assert appears to serve no purpose except to cause Inkscape to crash when the user chooses to exit the app when the XML editor is open. Commenting out the assert doesn't seem to cause any particular untoward behavior. * src/xml/: repr.cpp, repr.h: Hacking in a check to prevent deletion of the namedview entity, in order to close bug Inkscape Bug #850971. 2004-02-07 Johan Ceuppens * src/libnrtype/nr-type-gnome.cpp src/libnrtype/nr-type-directory src/libnrtype/nr-type-xft.cpp src/widgets/font-selector.cpp src/print.cpp src/module.h src/module.cpp modules/gnome.cpp: activated --with-gnome-print libnrtype/nr-type-primitives.h: removed possible gchar signedness bug. 2004-02-07 Nathan Hurst * src/widgets/gradient-position.*: modified the gradient knot editor to manipulate the knots, rather than rebuilding a gradient from scratch each time. 2004-02-07 MenTaLguY * src/xml/repr.h, src/xml/repr-util.cpp: cleaned up old code in #if 0 sections * src/display/canvas-arena.cpp, src/display/nr-arena-glyphs.cpp, src/display/nr-arena-item.cpp, src/display/nr-arena-shape.cpp, src/display/nr-arena.cpp, src/display/nr-arena.h: cleaned up old code in #if 0 sections * src/desktop-affine.cpp, src/desktop.cpp, src/draw-context.cpp, src/dropper-context.cpp, src/dyna-draw-context.cpp, src/seltrans.cpp, src/sp-root.cpp, src/sp-text.cpp, src/libnr/nr-macros.h, src/libnr/nr-types.h, src/libnr/nr-matrix.h, src/libnr/nr-matrix.cpp, src/libnrtype/nr-font.cpp, src/libnrtype/nr-rasterfont.cpp, src/livarot/PathSimplify.cpp, src/livarot/ShapeSweep.cpp: The array data member of NR::Matrix is now private; use the [] operator to access elements individually. More matrix routines now pass by reference, and the casting operators to cast to NRMatrix no longer leak memory (by allocating temporary objects that were never freed). * src/modules/db.cpp: cleaned up some very grotty code that gcc 3.4 (rightly) refused to compile * src/xml/repr-action.cpp: undo of content changes was pulling from the wrong union member (note to self: unions = evil) This fixes the problem with text editing undos yielding the wrong apparent undo order (bug #861462). 2004-02-05 bulia byak * src/sp-text.cpp src/sp-text.h: Function to adjust letterspacing * src/style.cpp: Comments * src/text-context.cpp: Alt+<> adjust letterspacing * src/helper/png-write.cpp: PNG comment: Software: www.inkscape.org * src/text-context.cpp: Support keypad keys, keypad +/- always zoom even when editing * src/shortcuts.cpp: Enable keypad Del * src/event-context.cpp: Enable keypad arrows with Ctrl to scroll canvas * src/zoom-context.cpp src/rect-context.cpp src/arc-context.cpp src/star-context.cpp src/spiral-context.cpp src/draw-context.cpp src/dyna-draw-context.cpp src/text-context.cpp src/dropper-context.cpp: Swallow keypad up/down keys too, preventing them from focusing the zoom field 2004-02-05 Jon Phillips * src/dialogs/item-properties.cpp, src/dialogs/item-properties.h, src/dialogs/object-attributes.cpp, src/dialogs/object-attributes.h, src/dialogs/object-properties.cpp, src/dialogs/object-properties.h, src/dialogs/sp-attribute-widget.cpp, src/dialogs/sp-attribute-widget.h, src/dialogs/stroke-style.cpp, src/dialogs/stroke-style.h, src/dialogs/text-edit.cpp, src/dialogs/text-edit.h, src/dialogs/tool-options.cpp, src/dialogs/tool-options.h, src/dialogs/transformation.cpp, src/dialogs/transformation.h, src/dialogs/xml-tree.cpp, src/dialogs/xml-tree.h, src/dialogs/xml-tree.cpp, src/dialogs/xml-tree.h: Converted the aforementioned to coding style. 2004-02-04 Ted Gould * src/desktop-snap.cpp: Removing some unused code that had been replaced. 2004-02-04 jon phillips * COPYING, COPYING.LIB, ChangeLog, Makefile.am, Makefile.mingw, Makefile.mingw.common, NEWS, README, autogen.sh, configure.in, inkscape-cvs-0.ebuild, inkscape.1.in, inkscape.spec.in: all files converted from tabs to 4 spaces and cleaned up the coding style, tested, they build, and have committed. * extension/*: I converted all files to coding style. * src/dialogs/align.cpp, src/dialogs/align.h, src/dialogs/desktop-properties.cpp, src/dialogs/desktop-properties.h, src/dialogs/dialog-events.cpp, src/dialogs/dialog-events.h: Converted the following files to use our coding convention. * src/dialogs/desktop-properties.cpp, src/dialogs/desktop-properties.h, src/dialogs/display-settings.cpp, src/dialogs/display-settings.h, src/dialogs/export.cpp, src/dialogs/export.h, src/dialogs/fill-style.cpp, src/dialogs/fill-style.h: converted the aforementioned files to new coding conventions. 2004-02-04 bulia byak * src/style.h src/style.cpp src/sp-text.cpp: Read-only (so far) support for letter-spacing CSS property * src/event-context.cpp src/select-context.cpp src/draw-context.cpp src/dyna-draw-context.cpp src/knotholder.cpp src/nodepath.cpp src/object-edit.cpp: Trimming #if 0 * src/text-context.cpp: Trimming #if 0, removing unneeded document_done * src/spiral-context.cpp src/star-context.cpp: Trimming #if 0, enabling ctrl-drag * src/dialogs/dialog-events.cpp src/preferences-skeleton.h: Added options.transientpolicy, 1 as default * src/preferences-skeleton.h: Increased options.keyscroll * src/dialogs/xml-tree.cpp: Fix for 852619, fix for failed asserts when selecting root * src/widgets/gradient-selector.cpp: Fix for 854514, 856682 2004-02-02 Peter Moulder * src/desktop-snap.h, src/desktop-snap.cpp: Indicate that the snap_list functions don't modify the passed snap points. For the wrapper versions, don't bother "copying back the new [actually unchanged] versions". 2004-01-31 bulia byak * src/zoom-context.cpp src/rect-context.cpp src/arc-context.cpp src/star-context.cpp src/spiral-context.cpp src/draw-context.cpp src/dyna-draw-context.cpp src/text-context.cpp src/dropper-context.cpp: Fix to swallow up/down keys in contexts so as to prevent zoom field from activation, but allow ctrl with up/down keys to scroll canvas. * src/interface.cpp: Removed New Preview, Remove Transform commands. Added Tutorial command to Help. * src/preferences-skeleton.h: Reduced default stroke width to 1 pt. * src/help.cpp src/help.h: Tutorial command. * icons/tutorial.svg: First try at the tutorial. * icons/Makefile.am: Adding tutorial. * src/nodepath.cpp: No-nodepath crash fixes. * doc/architecture.svg: Added namedview. * doc/default.svg: Removed, now reworked into icons/tutorial.svg. * src/event-context.cpp: Swapped scrollwheel modifiers. * src/xml/repr.cpp src/xml/repr-io.cpp: Small comment fix. 2004-01-31 Johan Ceuppens * src/verbs.cpp src/verbs.h: removed sp_fullscreen and put it in desktop.cpp and desktop.h as fullscreen * configure.in src/interface.cpp src/shortcuts.cpp src/inkscape.cpp src/inkscape.h src/desktop.cpp src/desktop.h: Added HAVE_GTK_WINDOW_FULLSCREEN as conditional compilation based on a function check for gtk_window_fullscreen in configure script 2004-01-30 Johan Ceuppens * src/verbs.cpp src/verbs.h: Added fullscreen verb. Fullscreen action is in SP_VERB_IS_ZOOM. * src/interface.cpp: Added fullscreen menuitem. * src/shortcuts.cpp: Linked in fullscreen shortcut (untested) * src/inkscape.cpp src/inkscape.h * src/desktop.cpp src/desktop.h: Added is_fullscreen gboolean to SPDesktop. 2004-01-30 Peter Moulder * src/libnr/nr-path.h, src/libnr/nr-path.cpp: Mark some functions as not modifying the matrix passed to them. * src/display/nr-arena-group.h, src/display/nr-arena-group.cpp (nr_arena_group_set_child_transform): Indicate that matrix isn't written to. * src/sp-item-transform.cpp (sp_item_rotate_rel, sp_item_scale_rel, sp_item_skew_rel), src/sp-marker.cpp (sp_marker_update, sp_marker_show_instance), src/sp-shape.cpp (sp_shape_bbox), src/sp-symbol.cpp (sp_symbol_update, sp_symbol_show, sp_symbol_print), src/display/nr-arena-shape.cpp (nr_arena_shape_update, nr_arena_shape_pick): Remove uses of nr_matrix_f_from_d. * src/libnr/nr-matrix.h, src/libnr/nr-matrix.cpp (nr_matrix_f_from_d), src/libnr/libnr.def: Remove now-unused nr_matrix_f_from_d. * src/nodepath.cpp (sp_nodepath_new), src/path-chemistry.cpp (sp_selected_path_combine, sp_selected_path_break_apart), src/selection-chemistry.cpp (sp_selection_apply_affine), src/selection.cpp (sp_selection_bbox_document), src/sp-item.cpp (sp_item_bbox_desktop, sp_item_private_snappoints), src/sp-pattern.cpp (sp_pattern_painter_new), src/modules/gnome.cpp (sp_module_print_gnome_fill), src/widgets/icon.cpp (sp_icon_image_load_svg): Remove uses of nr_matrix_d_from_f. * src/libnr/nr-matrix.h, src/libnr/nr-matrix.cpp (nr_matrix_d_from_f), src/libnr/libnr.def: Remove now-unused nr_matrix_d_from_f. * src/sp-item.h, src/sp-item.cpp (sp_item_set_i2d_affine_d, sp_item_i2doc_affine_d, sp_item_i2d_affine_d, sp_item_dt2i_affine_d): Merge _d version with non-_d version. Update callers. * src/rubberband.h, src/rubberband.cpp (sp_rubberband_start): Add NR::Point version. Implement x,y version as call to NR::Point version. 2004-01-29 Peter Moulder * src/desktop-snap.h, src/desktop-snap.cpp (sp_desktop_dim_snap_list): Export this function. (sp_desktop_horizontal_snap_list, sp_desktop_vertical_snap_list): Remove these now-unused functions. * src/select-context.cpp (sp_selection_moveto): Use sp_desktop_dim_snap_list instead of sp_desktop_horizontal_snap_list, sp_desktop_vertical_snap_list. * src/select-context.cpp (sp_selection_moveto): Fix what appears to be a memory leak. * src/rubberband.h, src/rubberband.cpp (sp_rubberband_move): Add NR::Point version. * src/seltrans.h (sp_sel_trans_point_desktop): Add NR::Point version. * src/seltrans.h, src/seltrans.cpp (sp_sel_trans_point_desktop, sp_sel_trans_origin_desktop): Indicate that pointer isn't written through. * src/node-context.cpp, src/select-context.cpp: Make some globals static. * src/style.cpp (sp_style_read_pfloat, SPS_READ_IFLOAT_IF_UNSET, SPS_READ_PFLOAT_IF_UNSET): Remove these unused functions/macros. 2004-01-28 MenTaLguY * src/toolbox.cpp: aux toolbar now expands properly when torn off (fix for bug #874923) * src/libnr/nr-svp.cpp, src/libnr/nr-stroke.cpp, src/libnr/nr-svp-private.h, src/libnr/nr-svp.h, src/libnr/nr-svp-render.cpp, src/libnr/nr-svp-uncross.cpp: NRCoord -> NR::Coord * src/interface.cpp: removed Filters menu * src/modules/win32.cpp: the Win32 GDI uses BRGx, rather than RGBA, so we reverse the B and R bytes before blitting (fix for bug #887428) 2004-01-28 Peter Moulder * src/seltrans.cpp: Various cleanups, including addressing some warnings, and doing some more NR::Point'ification. * src/knot.h, src/knot.cpp (sp_knot_set_position): Change from pass-by-value to pass-by-const-reference. * src/geom.cpp (sp_intersector_line_intersection): Restore definition of previous local `cross' function, but "inline" the dot(rot90(a), b) definition. This makes the definition conform to the documentation. * src/desktop-snap.cpp (sp_intersector_a_vector_snap): Undo a recent change that adapted to the previously-introduced bug in sp_intersector_line_intersection. * icons/Makefile.am: s/icons_dir/iconsdir/g for automake. * src/dialogs/Makefile.am, src/widgets/Makefile.am: s/icons_dir/iconsdir/g for consistency with icons/Makefile.am. 2004-01-27 jon phillips * Makefile.am: changed 'glade' globally to 'icons' * Makefile.mingw: changed 'glade' globally to 'icons' * config.h.mingw: changed 'INKSCAPE_GLADEDIR' to 'INKSCAPE_ICONS_DIR' * configure.in: changed 'glade' globally to 'icons' * Makefile.am: changed 'gladedir' to 'icons_dir', and fixed spacing, changed 'glad_DATA' to 'icons_DATA' * glade/about_svg.tmpl: changed 'glade' globally to 'icons' * po/pl.po: changed 'glade' globally to 'icons' * src/config.h.win32: changed 'SODIPODI_GLADEDIR' to 'SODIPODI_ICONS_DIR' * src/dialogs/Makefile.am: changed 'gladedir' to 'icons_dir', changed '-DINKSCAPE_GLADEDIR=\""$(gladedir)"\" \' to '-DINKSCAPE_ICONS_DIR=\""$(icons_dir)"\" \' * src/dialogs/makefile.msc: changed 'gladedir' to 'icons_dir' * src/dialogs/object-properties.cpp: changed 'INKSCAPE_GLADEDIR' to 'INKSCAPE_ICONS_DIR' * src/dialogs/stroke-style.cpp: changed 'INKSCAPE_GLADEDIR' to 'INKSCAPE_ICONS_DIR' * src/widgets/Makefile.am: changed 'gladedir' to 'icons_dir' * src/widgets/icon.cpp: changed 'glade' globally to 'icons' * src/widgets/makefile.msc: changed 'gladedir' to 'icons_dir' 2004-01-26 bulia byak * src/inkscape.cpp: failed assertion fix * src/shortcuts.cpp: Linked/dynamic offset shortcuts, zoom to page width * src/preferences-skeleton.h: Add inkscape:pageopacity, borderopacity * src/attributes.cpp,h src/sp-namedview.cpp,h: Add inkscape:pageopacity * src/dialogs/desktop-properties.cpp: Get/set inkscape:pageopacity in the page background color picker; reword and rearrange labels, spacing fix * src/dialogs/export.cpp: Use inkscape:pageopacity for export background; fix crash on exit * src/file.cpp: Remove debug output when exporting * src/sp-gradient.cpp src/svg/svg-path.cpp src/libnr/nr-compose.cpp src/dir-util.cpp src/desktop.cpp: Fixes from sodipodi * src/main.cpp: Fix PNG size limits when exporting from commandline * src/style.cpp src/style.h: currentColor support from sodipodi * src/sp-gradient.cpp: Fix for 876614 from sodipodi * src/dialogs/desktop-properties.cpp: Convert meters to cm on writing (to make svg/@height and svg/@width SVG compliant) * src/sp-rect.cpp: Fix in description * src/dialogs/text-edit.cpp: Fix bug: undo broken when font applied to more than one text object. And another bug: do not apply text, only style, when more than one text object selected. * src/widgets/font-selector.cpp: Make font and style lists scroll automatically to show selected row 2004-01-26 Peter Moulder * config.h.win32: Remove this outdated and apparently-unused file. * src/livarot/Path-test.cpp: new file. * src/livarot/Makefile.am: New test program Path-test. Remove $(cflags) from INCLUDES. * configure.in: Adjust some things for our C to C++ transition. Add warning flags to CXXFLAGS if the compiler is g++. 2004-01-26 MenTaLguY * src/configure.in, src/Makefile.am, src/modules/Makefile.am, src/libnrtype/Makefile.am: merged patch #847856 for autotools builds on mingw/win32 * src/sp-marker.h: added a URIReference subclass for markers * src/sp-path.cpp: fixed backwards-compatiblilty thing with (ancient) Sodipodi * src/xml/repr-action.c, src/xml/repr-action.h, src/xml/repr-private.h, src/xml/repr.cpp: made SPReprDoc::is_logging a C++ bool, and fixed sp_repr_rollback() to respect the no-logging-during-rollback invariant 2004-01-25 MenTaLguY * src/sp-object-repr.cpp, src/splivarot.cpp, src/sp-offset.cpp: changed "offset" to "inkscape:offset" for sodipodi:type 2004-01-24 bryce * src/dialogs/stroke-style.cpp: Hooking up marker buttons to underlying marker style setting code, & etc. 2004-01-24 bulia byak * src/document.cpp src/sp-namedview.cpp: Desensitize undo for changing document uri and for saving window geometry/viewarea into namedview * src/xml/repr-util.cpp: Increase precision in set_double_attr * src/arc-context.cpp: Call invoke_write when finishing arc, instead of setting attrs manually * src/sp-ellipse.cpp: Add write method to genericellipse; fix handling of start and end attrs; fix undo bug (877238) 2004-01-24 MenTaLguY * src/xml/repr-action.h, src/xml/repr-action.c: made the SPReprAction::act union anonymous, and reworked the transaction log optimization code. sp_repr_coalesce_log() should be a bit faster now, and no more strcmp()s. 2004-01-23 Peter Moulder * src/livarot/Path.h, src/livarot/Path.cpp (Path::Affiche): remove unused function. Doing so allows removal of path_descr_moveto::pathLength field and the code for calculating its value. * src/livarot/Path.cpp (SizeForData): Change from private method to static function. Use new function roundup_div instead of `%' calculation. (Path::CloseSubpath): Remove loop that calculated pathLength. Consequently remove the no-longer-used argument. Update callers. (Path::MoveTo, Path::LineTo, Path::CubicTo, Path::ArcTo, Path::TempBezierTo, Path::EndBezierTo, Path::IntermBezierTo, Path::BezierTo, Path::AddPoint, Path::PointAt, Path::PointAndTangentAt): Change some C-style casts to reinterpret_cast's. (Path::PointAt, Path::PointAndTangentAt): code transformations in preparation for merging some branches. * src/libnr/nr-types-test.cpp (main): Update for NR::Point .pt privateness change. * src/libnr/nr-svp-uncross.cpp (nr_segment_intersection): Mark some pointer arguments as not being written through. Add doc comment. * src/selection-chemistry.cpp (sp_matrix_d_set_rotate): Slight reduction in numerical error. (Also rename variables from `angle' to `angle_degrees' in several places.) * src/node-context.cpp (sp_node_context_root_handler): * src/object-edit.cpp (sp_arc_start_set, sp_arc_end_set, sp_spiral_inner_set, sp_spiral_outer_set): * src/select-context.cpp (sp_select_context_root_handler): * src/seltrans.cpp (sp_sel_trans_rotate_request): Fix for options.rotationsnapsperpi == 0. * src/event-context.cpp (sp_event_context_private_root_handler): Address warning. 2004-01-22 bulia byak * src/attributes.h src/attributes.cpp: Added pagecolor, bordercolor, borderopacity (from sodipodi), pageshadow. * src/sp-namedview.h src/sp-namedview.cpp: Added reading page attributes. * src/desktop.cpp: Added setting page and border color (from sodipodi), pageshadow taken from namedview. * src/preferences-skeleton.h: Moved pageshadow into namedview, added page and border colors to the template. * src/dialogs/desktop-properties.cpp: Added page and border color selectors (from sodipodi), moved former document settings here. * src/verbs.cpp src/verbs.h: Removed document settings, renamed editing window into document options. * src/interface.cpp: Removed document settings command. * src/dialogs/document-properties.cpp,h src/dialogs/tool-attributes.cpp,h: Removed. * src/dialogs/object-properties.cpp: Removed size and position dialog. * src/dialogs/Makefile.am: Removed unused dialogs. * src/verbs.cpp src/verbs.h: Removed unused dialog verbs. * src/dyna-draw-context.cpp: Removed debug output. * src/node-context.h: New members for tracking left, right/alt, ctrl. * src/nodepath.cpp: Reorganize [] <> code, add update_repr (oops). Fix near-zero handles behavior with <>. * src/sp-item-transform.cpp: More correct transformation writing method: use each item's transform writer instead of simply adding transform= attribute. * src/document.cpp src/document.h src/document-undo.cpp: Added sp_document_ensure_up_to_date on each undoable action, fixes bbox problems (bug 879249). Added callback to reset actionkey on each selection change, so that same-key actions on different objects are not lumped together. * src/selection-chemistry.cpp: Removed spurious sp_selection_changed calls from all transformation functions, coalesced [] <> rotates and scales. * src/select-toolbar.cpp: Coalesced spinbutton moves and scales. 2004-01-21 MenTaLguY * src/desktop-snap.cpp, src/desktop.cpp, src/nodepath.cpp, src/object-edit.cpp, src/sp-namedview.cpp, src/sp-offset.cpp, src/splivarot.cpp, src/uri.h, src/dialogs/desktop-properties.cpp, src/libnr/nr-matrix.cpp, src/libnr/nr-matrix.h, src/libnr/nr-point-fns.cpp, src/libnr/nr-point-fns.h, src/libnr/nr-rect.cpp, src/libnr/nr-types.cpp, src/libnr/nr-types.h, src/livarot/Path.cpp, src/livarot/PathConversion.cpp, src/livarot/PathOutline.cpp, src/livarot/PathSimplify.cpp, src/livarot/PathStroke.cpp, src/livarot/Shape.cpp, src/livarot/ShapeMisc.cpp, src/livarot/ShapeSweep.cpp, src/livarot/ShapeSweepUtils.cpp: Cleanup; made data member of NR::Point private and replaced a few 'magic' [0] and [1] indices with the more meaningful NR::X and NR::Y. 2004-01-20 Jon Phillips * src/help.cpp: I cleaned up the code a little according to our coding standards and have/am adding comments to the help system. 2004-01-20 bulia byak * src/selection-chemistry.cpp,h: New scaling utility functions * src/select-context.cpp: <> [] with modifiers to scale/rotate objects * src/nodepath.cpp,h: New functions for scaling and rotating nodes * src/node-context.cpp: <> [] with modifiers to scale/rotate nodes, left/right modifiers affect one of the two handles * src/node-context.h: New node context members for tracking left/right alt/ctrl * src/event-context.cpp: Use cursor coords when zooming by scrollwheel (fixme) 2004-01-19 MenTaLguY * src/dialogs/xml-tree.cpp: automatically scroll tree view to show selected item 2004-01-19 Jon Phillips * src/desktop.cpp: Changed the document shadow to be an option. It is option.pageshadow. I also made some wrapper code so that if the value is set to 0, then the constructor for page shadow is not initialized. 2004-01-18 bulia byak * src/sp-spiral.cpp,h: Moved defines to .h * src/object-edit.cpp: Reenabled restricted ctrl-rotation of spiral and arc. Added alt-drag in spiral to lock radius. Used PI/options.rotationsnapsperpi everywhere instead of PI/4. * src/selection-chemistry.cpp,h src/select-context.cpp: Enable [ ] keys to rotate selected objects by rotationsnapsperpi. Alt [ ] rotate by angular pixels. * src/event-context.cpp src/preferences-skeleton.h src/desktop.h src/zoom-context.cpp src/select-context.cpp: Behavior fixes, simplifications, & unifications in handling dragtolerance, rubberband, and shift/ctrl+selection * src/event-context.cpp src/preferences-skeleton.h src/desktop.h: Define & use new options for scrolling distances: keyscroll, wheelscroll 2004-01-18 MenTaLguY * src/uri.h, src/uri.cpp, src/uri-reference.h, src/uri-reference.cpp, src/sp-item.h, src/sp-item.cpp, src/sp-clippath.h, src/sp-gradient.h, src/sp-gradient.cpp, src/sp-mask.h, src/sp-item.h, src/sp-item.cpp: Reworked URIs to use libxml, and URIReferences to be specialized for particular object types. Also switched gradients to using URIReferences. 2004-01-17 Jon * src/desktop.cpp: Changed the document shadow to 1 pixel. It as set to 5, which is really cheesy. I changed it in the constructor for SP_desktop_new in the function sp_ctrlrect_set_shadow(). 2004-01-17 Bryce * src/sp-root.cpp, src/sp-symbol.cpp: Fixing NRMatrix's a -> &a so codebase will build. * Adding marker xpm's to Makefile.in so the button images display in the stroke style dialog (must do a make install) 2004-01-17 MenTaLguY * src/uri.h, src/uri.cpp, src/uri-references.cpp: new Inkscape::URI implementation using libxml URI stuff 2004-01-15 bulia byak * src/preferences-skeleton.h: Added: tools.freehand.perncil tolerance, options.zoomincrement, rotationsnapsperpi, maxrecentdocuments * src/seltrans.cpp src/draw-context.cpp src/nodepath.cpp: Rotation snaps taken from preferences * src/inkscape.cpp: Max recent documents from prefs * src/desktop.cpp,h: New _keep_point zoom functions * src/event-context.cpp: Zoom in/out on (shift+)middle click, use options.dragtolerance, use options.zoomincrement, use _keep_point zoom functions * src/verbs.cpp: Use options.zoomincrement * src/zoom-context.cpp: Use options.zoomincrement, use _keep_point zoom functions * src/tools-switch.cpp: Fix for 865740 * src/draw-context.cpp: Fix for 877188 * src/nodepath.cpp: Swapped ctrl-click and ctrl-alt-click * src/knot.cpp src/knotholder.cpp src/nodepath.cpp: Knot colors, using XOR paint mode * src/widgets/widget-sizes.h src/desktop.cpp: Coord skip taken from define, limited height of the bottom bar * src/splivarot.h src/splivarot.cpp src/verbs.cpp src/verbs.h src/interface.cpp: Added dynamic and linked offsets to menu * src/knot.cpp src/select-context.cpp src/zoom-context.cpp src/draw-context.cpp: Unified within_tolerance handling; take curve fitting tolerance from preferences in freehand tool (default 10) 2004-01-15 MenTaLguY * glade/about.svg, glade/about_svg.tmpl, samples/inkscape.logo.svg: updated to match the current standard logos from inskcape_project/artwork 2004-01-15 Nathan Hurst * src/livarot/* an ungodly number of changes for improved use of NR::Point. Const propagation. Minor bugfixes. 2004-01-15 Peter Moulder * src/widgets/paint-selector.cpp (sp_paint_selector_set_color_alpha, sp_paint_selector_get_color_alpha, sp_paint_selector_system_color_set), src/widgets/sp-color-gtkselector.cpp (ColorGtkselector::_colorChanged), src/widgets/sp-color-notebook.cpp (ColorNotebook::_colorChanged, ColorNotebook::_updateRgbaEntry), src/widgets/sp-color-selector.cpp (ColorSelector::setAlpha, ColorSelector::setColorAlpha, ColorSelector::_updateInternals): Add assertions that alpha is in [0.0, 1.0]. * src/libnr/nr-types.h, src/libnr/nr-rect.cpp (NR::Rect::corner): Change argument to unsigned, thus changing remainder operator to modulo operator, thus fixing bug for "negative" arguments (-1u etc.). * src/dialogs/stroke-style.cpp (sp_stroke_style_paint_update_repr): fix bug with unsigned->float alpha conversion. * src/nodepath.cpp (angle_normalize): Remove no-longer-used function. * src/draw-context.cpp (spdc_endpoint_snap_internal): Fix for negative options.rotationsnapsperpi. 2004-01-14 Peter Moulder * src/selection-chemistry.cpp (sp_selection_item_next, sp_selection_item_prev): cleanups, including moving some common code into new static function scroll_to_show_item. * src/widgets/font-selector.h, src/widgets/font-selector.cpp (sp_font_selector_set_font_fuzzy): Remove this unused function. * src/sp-text.cpp (sp_text_font_style_to_lookup), src/dialogs/text-edit.cpp (sp_text_edit_dialog_font_style_to_lookup): Move this duplicated function to src/libnrtype/font-style-to-pos.cpp as font_style_to_pos, rewriting & fixing its bugs in the process. Adjust callers. * src/libnrtype/font-style-to-pos.cpp, src/libnrtype/font-style-to-pos.h: New files. * src/libnrtype/Makefile.am: Mention the new files. * src/libnrtype/nr-type-pos-def.h: Make the default constructor fill in sensible values. Add constants for CSS weight numbers. 2004-01-13 MenTaLguY * src/object-ui.cpp: 'Fill Settings' -> 'Fill and Stroke' * src/FilePath.cpp, src/FilePath.h: removed until we can rethink the file stuff 2004-01-13 Peter Moulder * src/libnrtype/nr-type-directory.h, src/libnrtype/nr-type-directory.cpp (nr_type_directory_lookup_fuzzy): Change second arg from char const* to NRTypePosDef. (nr_type_calculate_position) Move to nr-type-pos-def.cpp as implicit NRTypePosDef constructor from string. * src/libnrtype/nr-typeface.h: NRTypePosDef changed from struct to class. * src/libnrtype/nr-type-pos-def.h, src/libnrtype/nr-type-pos-def.cpp: new files. * src/libnrtype/Makefile.am: Mention the new files. * src/sp-text.cpp (sp_text_font_style_to_lookup): Fix segfault I introduced, reported by ishmal. 2004-01-12 bulia byak * src/sp-rect.cpp: Removed coordinates from rect description * src/selection-chemistry.cpp: Delete fix from sodipodi, more statusbar diagnostics * src/prefs-utils.cpp,h: New functions for setting/getting string values * src/dialogs/export.cpp: Export dialog tracks selection and document changes (fix for 853849). Export area, dpi remembered in prefs. Misc fixes and cleanups * src/preferences-skeleton.h: New options for export: exportarea, defaultxdpi * src/widgets/spw-utilities.cpp,h: New function for recursively searching widgets for key/value pair * src/svg/svg-affine.cpp: Ignore whitespace at the end of transform attribute - fix for 850943 (from sodipodi) * src/select-toolbar.cpp: Correctly handle zero dimensions - fix for 871552 2004-01-12 Peter Moulder * src/sp-gradient.cpp (sp_gradient_repr_set_vector): "Fix" a memory leak. However, I haven't worked out how to get this code to run, in order to check that the guessed replacement code is correct. Instead I've inserted a g_warning and a TODO comment. * src/libnrtype/nr-type-directory.cpp (nr_type_calculate_position): Fix bug where `ultra bold' and `extra bold' were getting parsed as `bold'. (nr_type_distance_family_better, nr_type_distance_position_better): Rename to nr_type_distance_family and nr_type_distance_position respectively, and return just the distance. (nr_type_distance_family): Use g_ascii_strcasecmp instead of strcasecmp/stricmp. (nr_type_distance_family): Return unsigned instead of float. (nr_type_distance_position): Use double instead of float. * src/libnrtype/nr-rasterfont.cpp (nr_rasterfont_generic_glyph_area_get, nr_rasterfont_generic_glyph_mask_render): Suppress warning: s/CLAMP/MIN/ if the type is unsigned and the lower bound is 0. * src/helper/sp-canvas.cpp (paint): Cache canvas->{x0,y0} + GTK_WIDGET(canvas)->allocation.{width,height}. Remove some commented-out variables. * src/tools-switch.cpp, src/tools-switch.h: Make some functions static. (tools_num2name): Remove unused function. (tools_isactive): Add assertion of not accessing past the end of the array. * src/knot.cpp (sp_knot_handler): Fix bug where event wasn't getting consumed. Get rid of hypot macro. * src/svg/svg-affine.cpp (sp_svg_transform_write): Add assertions that buffer overflow hasn't occurred. * src/sp-text.cpp (sp_text_font_style_to_lookup), src/dialogs/text-edit.cpp (sp_text_edit_dialog_font_style_to_lookup): Slight restructuring using g_snprintf instead of less readable (& slightly less efficient in this case) strlen/memcpy. * src/sp-metrics.h: Increase accuracy of PT_PER_CM etc. Add FIXME comment. * src/dialogs/item-properties.cpp, src/display/nr-arena-shape.cpp: Address `-Wshadow' warnings. * src/nodepath.h, src/nodepath.cpp: Make some functions static. (sp_nodepath_node_deselect) Remove unused function. * src/dialogs/align.cpp (sp_quick_align_dialog): Switch to data-driven approach. Mark some things as static. (sp_quick_align_dialog_close) Remove unused function. (sp_align_arrange_clicked) Change aligns constant array from ints to doubles. Adjust caller. 2004-01-11 Iain * src/modules/ps.cpp: Swap the Print and Cancel buttons around, and remove the separator. 2004-01-11 bulia byak * src/desktop.cpp,h: New functions and SPDesktop members for maintaining lists of past and future zooms. New commands for toggling rulers and scrollbars, removed old and unused toggle_borders. Zoom spinbutton editable again, coord_status uses gtk_label instead of statusbar, misc cosmetics. Reduced sizes of the window bottom stuff. Save/restore the status of rulers and scrollbars in preferences. * src/preferences-skeleton.h: New options: showrulers, showscrollbars. Added default namedview for a 640x480 new document window. * src/widgets/spinbutton-events.cpp,h: Common spinbutton callbacks. * src/widgets/Makefile.am: Added spinbutton-events. * src/select-toolbar.cpp: Remove code into spinbutton-events. * src/widgets/widget-sizes.h: Added sizes for bottom stuff: zoom field, coord status, statusbar. Misc cosmetic changes. * src/verbs.cpp,h: New verbs for next/prev zoom. New verbs for toggling rulers and scrollbars. * src/sp-namedview.cpp: Cancel past zooms at the end of window_from_document. * src/shortcuts.cpp: `, shift-` to navigate the history of zooms. Ctrl-r, Ctrl-b to toggle rulers and scrollbars. * src/interface.cpp: Added next/prev zoom commands in the view menu. Added three toggle commands (grid, rulers, scrollbars) in the view menu. * src/widgets/ruler.cpp: Use fixed smaller font size, defined in widget-sizes. 2004-01-10 bulia byak * src/draw-context.cpp: Changed alt to shift for one-handle drag. 2004-01-10 Peter Moulder * src/desktop-events.cpp, src/desktop-snap.cpp, src/draw-context.cpp, src/gradient-chemistry.cpp, src/selection-chemistry.cpp, src/seltrans.cpp, src/sp-shape.cpp: Address some `-Wshadow' warnings. * src/attributes.cpp, src/color.cpp, src/inkscape.cpp, src/interface.cpp, src/helper/units.h, src/libnrtype/nr-type-xft.cpp, src/svg/svg-color.cpp, src/widgets/gradient-vector.cpp: Address some `-Wwrite-strings' warnings. * src/document.h, src/document.cpp, src/prefs-utils.h, src/prefs-utils.cpp, src/select-toolbar.cpp, src/helper/unit-menu.h, src/helper/unit-menu.cpp, src/libnr/nr-object.h, src/libnr/nr-object.cpp: Mark some pointer function arguments as not being written through. * src/path-chemistry.cpp (sp_selected_path_combine): Fix what appears to be a memory leak. Change string concatenation from Omega(n^2) to Omega(n). 2004-01-09 bulia byak * src/zoom-context.cpp: Added drag tolerance * src/widgets/widget-sizes.h: Spinbutton steps defined here * src/widgets/spw-utilities.cpp,h: New function for recursively searching widgets for data * src/select-context.cpp: Alt-x activates aux toolbar * src/select-toolbar.cpp: Implement esc, ctrl-z, up/down, pgup/pgdn, tab in the aux toolbar, identified default spinbutton for activating by alt-x * src/nodepath.cpp: Fix for uninitialized variable, reported by Bob Jamison * src/draw-context.cpp: Fix for 873092; Never snap if hitting anchor 2004-01-08 bulia byak * src/select-context.cpp: Fixed ctrl-drag (without breaking ctrl-click) * src/verbs.cpp: Tooltip edits * src/desktop.cpp: Changed initial statusbar message (suggested by Daniel Diaz) * src/tools-switch.cpp src/nodepath.cpp src/selection.cpp: Edited statusbar messages, made them translatable 2004-01-08 Nathan Hurst * src/helper, src/libnr and various: removed senescent code inside #if 0s and changed scoping of variables to be close to use. minor performance tweeks. 2004-01-08 Peter Moulder * src/widgets/sp-color-notebook.cpp (getCurrentSelector): Address unsignedness warning (thus fixing a minor buglet). * Too many files to list (58 .cpp files, phew!): Address `missing initializer for member _GTypeInfo::value_table' warnings. * src/toolbox.cpp, src/helper/sp-canvas.cpp: Address miscellaneous other `missing initializer' warnings. * src/libnr/nr-values.h, src/libnr/nr-values.cpp: Add `Point component_vectors[2]' global constant (moved from desktop-snap.cpp). * src/sp-namedview.cpp: Combine SPNamedview .hguides & .vguides into .guides. Combine .gridspacingx, .gridspacingy scalars into .gridspacing Point. Consequently reduce copy&paste code both here & in callers. * src/sp-guide.h, src/sp-guide.cpp (sp_guide_moveto, sp_guide_position_set): Take a scalar (.position value) as argument, not a point. (sp_guide_position_from_pt): new function. Adapt callers. (sp_guide_description): New function. (sp_guide_compare): Remove, not used. Change SPGuide.orientation (horizontal/vertical enum) to .normal (a Point to be used with dot product), as a step towards allowing arbitrary-direction guide lines. * src/desktop-events.cpp: Adapt to SPGuide change. Remove some #if 0'ed code that would otherwise require updating. * src/desktop-snap.h, src/desktop-snap.cpp: Convert some pass-by-value Point arguments to const references. Unexport sp_desktop_dim_snap_list_scale. Adapt to above changes. * src/dialogs/desktop-properties.cpp: Adapt to .gridspacing change. 2004-01-07 Peter Moulder * src/geom.h, src/geom.cpp (sp_intersector_line_intersection): change arguments from `Point' to `Point const &'. * src/libnr/nr-types.h: Move cross to its sole user, src/geom.cpp. 2004-01-06 bulia byak * src/widgets/spw-utilities.cpp,h: Recursive font setting functions * src/widgets/widget-sizes.h: New: defines sizes and intervals, for toolbars etc. * src/select-toolbar.cpp src/helper/unit-menu.cpp src/toolbox.cpp,h: Use widget-sizes.h and recursive font_set 2004-01-06 Peter Moulder * src/desktop-snap.cpp: Make the `horizontal' and `vertical' global constants be static. Similarly, make functions sp_intersector_a_vector_snap, sp_desktop_dim_snap_list static. * configure.in: Fix sigc++ checking code: add it to the existing PKG_CHECK_MODULES(INKSCAPE, ...) list instead of modifying $CXXFLAGS,$LIBS. * distro: Remove some bashisms: change `function f {...}' to `f () {...}', and invoke self with `sh' rather than `bash'. Also change a strange-looking "tr ' ' ' '" to "tr -s ' '", as a guess as to the intended meaning. (The actual meaning of the original is a noop.) 2004-01-06 bulia byak * src/document-undo.cpp src/document.h: Undo and redo now return gbooleans * src/selection-chemistry.{cpp|h}: sp_undo, sp_redo: new, with statusbar diagnostics. Duplicate command adds statusbar diagnostics, places duplicate into the source's parent instead of document root * src/verbs.cpp: Use sp_undo, sp_redo. Tooltip edits * src/toolbox.cpp src/toolbox.h: New aux_toolbox_space() * src/interface.cpp: New commands in view (cycling desktops) and dialogs (hide dialogs) * src/main.cpp: Removed unneeded include * src/select-toolbar.cpp src/select-toolbar.h: New selector aux toolbar with XYWH spinbuttons (taken mostly from the size&position dialog) * src/toolbox.cpp src/toolbox.h: Removed selector aux toolbar code from here * src/helper/unit-menu.cpp: Use abbreviations in the unit menu * src/widgets/sp-widget.cpp: Added checks that the inkscape object is valid before disconnecting SPWidget from it 2004-01-06 MenTaLguY * src/Makefile.am: removed monostd.h * src/sp-item.cpp, src/uri-reference.h, src/uri-reference.cpp: redid URI reference stuff a bit 2004-01-06 Nathan Hurst * src/desktop-snap.{h,cpp} is now built using NR::Point. 2004-01-06 Nathan Hurst * src/draw-context.cpp closing a segment now remains snapped. Lots of snapping fixes. 2004-01-05 MenTaLguY * src/uri-references.cpp, src/uri-references.h, src/uri.cpp, src/uri.h, sp-item.cpp: new URI code 2004-01-04 MenTaLguY * src/object-ui.cpp: flattened group submenu * src/uri-references.cpp: fixed initialization bug; for pre-existing references, the "release" signal wasn't being connected 2004-01-04 Peter Moulder * src/helper/bezier-utils.cpp: Greater use of NR::Point instead of NRPoint. (Readability improved as a result.) Get rid of now-unused sp_vector_add etc. functions. Get rid of MAXPOINTS fixed upper limit, in the process making more efficient. NewtonRaphsonFindRoot: handle the case where f'(u) <= 0. (Previously it would seek a local maximum instead of minimum in this case.) Rename lots of static functions according to our coding standards. Fix some documentation. Filter out any NaN points in the input. Change the iteration cutoff from the square of the requested error to 3 * the requested error. Change the "acceptable error" test from `<' to `<='. * src/helper/bezier_utils.h (sp_bezier_fit_cubic_full): change arguments from NRPoint to NR::Point. * src/sp-spiral.cpp: Adapt to sp_bezier_fit_cubic_full change. Greater use of NR::Point instead of NRPoint. * src/helper/curve.h, src/helper/curve.cpp (sp_curve_moveto, sp_curve_lineto, sp_curve_curveto): Add convenience wrappers that take n NR::Point's instead of 2*n gdoubles. * src/helper/curve.h, src/helper/curve.cpp: Indicate that certain functions don't modify the curve passed to them. * src/libnr/nr-types.h: operator[], operator+=, operator/=, unary operator-, operator==, operator!=: new. Remove methods L1,L2,Linfty, move them to functions in nr-point-fns.{h,cpp}. Rename Normalize to normalize with more sophisticated non-inline implementation in nr-types.cpp. * src/libnr/{nr-types.cpp,nr-point-fns.h,nr-point-fns.cpp}: new files. * src/libnr/nr-types-test.cpp: new unit test file. * src/libnr/Makefile.am: mention the new files. * src/Makefile.am: Add `check-recursive: all-recursive' dependency (and a comment with related discussion). * src/xml/Makefile.am: Append $(EXEEXT) to executables in TESTS. * src/verbs.cpp (sp_action_get_title): Get rid of fixed-sized buffer. * src/nodepath.cpp: Miscellaneous cleanups including fixing erroneous indentation, changing `g_list_length(foo) == 0' to `foo == NULL', removing unused function closest_of_three, specifying some functions as `static', adding doc. * src/inkscape.cpp (inkscape_remove_desktop): Change `g_slist_length (foo) == 0' to `foo == NULL'. * src/dyna-draw-context.cpp (fit_and_split_calligraphics): Fix the calculation of BEZIER_MAX_LENGTH. Add assertions that the corresponding buffers haven't been overrun. 2004-01-03 Ted Gould * src/helper/bezier-utils.cpp, src/inkscape-stock.h: Fixing some Doxygen errors. 2004-01-03 bulia byak * src/dialogs/dialog-events.{cpp|h}: Hide/unhide callbacks * all dialog files: Connected hide/unhide signals * src/inkscape.cpp src/inkscape.h: New functions for dialog hide, unhide, toggle * src/verbs.cpp src/verbs.h: New verb for dialog toggle * src/shortcuts.cpp: F12, quoteleft toggle dialogs * src/desktop.cpp: Zoom field width increased * src/node-context.cpp: Crash fix by Robert Crosbie 2004-01-03 MenTaLguY * src/inkscape.cpp, src/inkscape.h, src/main.cpp: fixes to preference loading * src/uri-reference.h: documented Inkscape::URIReference * src/sp-item.cpp: fixed double hunref problem * src/sp-item.cpp, src/uri-references.h, src/uri-references.cpp: reworked Inkscape::URIReference a little * src/sp-item.cpp: masks now use Inkscape::URIReference as well 2004-01-02 MenTaLguY * src/shortcuts.cpp: zoom in shortcut fix for german and other keyboards from schumaml * configure.in: added SigC++ 1.2 dependency * src/document-private.h, src/document.h, src/document.cpp, src/sp-item.h, src/sp-item.cpp, src/uri-reference.h, src/uri-reference.cpp: rewrote URI monitoring code using SigC++ * src/inkscape.cpp: fix some portability issues * src/inkscape.cpp, src/widgets/icon.cpp, src/monostd.h: cleaning up more platform stuff * src/dir-util.cpp, src/dir-util.h, src/dialogs/export.cpp: remove sp_filename_from_path(); use g_path_from_filename instead 2004-01-02 Alexander Clausen * src/spsvgview.cpp src/inkview.cpp src/Makefile.am: re-enabled svg viewer, renamed to inkview to avoid name clash with spsvgview from sodipodi 2004-01-01 bulia byak * src/desktop.cpp: Pass keyboard events from desktop widget to event contexts (if there is no current item on the canvas); now all keys work regardless of mouse position, so long as the document window has focus. * src/verbs.cpp src/verbs.h: New verbs for switching desktops * src/inkscape.cpp src/inkscape.h: New functions for switching desktops * src/nodepath.cpp: Fix crash: Tab when no nodepath * src/shortcuts.cpp: Ctrl-Tab, Shift-Ctrl-Tab cycle desktops * src/node-context.cpp src/event-context.cpp src/select-context.cpp: Do not consume Ctrl-Tab/Shift-Ctrl-Tab in contexts. Explicitly run the corresponding verb in event-context.cpp because otherwise GTK gobbles it. * src/splivarot.cpp: Edits in statusbar error messages 2004-01-01 MenTaLguY * src/document-private.h, src/document.h, src/document.cpp, src/sp-item.h, src/sp-item.cpp, src/uri-reference.h, src/uri-reference.cpp: added code to handle notifications when uri/id mappings changed * src/desktop.cpp, src/style.cpp: compilation cleanups * src/libnr/nr-types.h: documented NR::Coord and NR::ICoord 2003-12-31 MenTaLguY * removed *S variants of NR structs * src/libnr/gen_nr_config.c: removed! * src/xml/repr.h, src/xml/repr-private.h, src/xml/repr-io.cpp, src/xml/repr.cpp: very preliminary comment support * configure.in, src/desktop.cpp, src/main.cpp: removed gtkmm dependency for now 2003-12-30 bulia byak * src/selection-chemistry.cpp: Grouping: Statusbar messages for nothing to group or only one object, prevent crash when trying to group objects with different parents, add new group to the members' common parent rather than to the document root. Ungrouping: ungroup all groups in selection, statusbar messages for nothing to ungroup. * src/node-context.cpp src/node-context.h src/knotholder.h src/knotholder.cpp src/nodepath.h src/nodepath.cpp src/document-undo.cpp: Add repr listener in node context recreating nodepath or knotholder when the repr was changed outside of the node editor, remove the change selection signal hack in document_undo, fixes many bugs. 2003-12-28 Daniel Borgmann * src/main.cpp: Include gtkmm/main.h and gtkmmify the main loop * src/desktop.cpp: convert save confirmation dialog to Gtkmm 2003-12-28 Peter Moulder * src/helper/Makefile.am: Try not to require Gnu make. 2003-12-27 Alexander Clausen * src/interface.{h,cpp} (sp_ui_error_dialog): new function. * src/file.cpp src/main.cpp src/dialogs/export.cpp src/interface.cpp: use it 2003-12-27 bulia byak * src/draw-context.cpp: Added drag_tolerance to bezier tool, messages to statusbar * src/knot.cpp: Do not consume Esc when not escaping knot dragging * src/select-context.cpp: Enable dragging objects selected within group 2003-12-27 Peter Moulder * src/helper/bezier-utils.cpp: Simplifications & documentation. 2003-12-26 bulia byak * src/document.cpp: added rel2abs to sp_document_set_uri, simplified * src/document.cpp: removed rel2abs into dir-util * src/dir-util.cpp src/dir-util.h: moved rel2abs and abs2rel here * src/modules/svg.cpp: Cleaned up svg_save: removed extraneous setting of docbase and docname, moved uri_set before save, added comments * src/document.h src/document.cpp src/desktop.h src/desktop.cpp: item_at_point: add into_groups; group_at_point: new * src/selection.cpp: When selecting a group, deselect all its descendants to prevent double selection * src/select-context.cpp src/select-context.h: Added ctrl-click/ctrl-shift-click to select/add to selection regardless of grouping * src/verbs.cpp: 2 more mnemo changes 2003-12-26 Nathan Hurst * libnr: moving towards a fully class based Point and Matrix. This change adds an initial sketch of matrix. 2003-12-26 MenTaLguY * configure.in: added Gtkmm dependency, removed AC_FUNC_MALLOC 2003-12-25 MenTaLguY * src/desktop.cpp: changed g_sprintf to g_strdup_printf 2003-12-25 Daniel Borgmann * src/interface.cpp src/verbs.cpp: Fixed a few more mnemonics (mostly duplicates) and changed shortcut labels to use uppercase letters like the rest of the world. :-) 2003-12-25 Alexander Clausen * src/file.cpp src/main.cpp src/dialogs/export.cpp: Made error dialogs and progressbar transient and non-resizable; made export file selector transient. 2003-12-24 bulia byak * src/select-context.cpp: Added statusbar update in a few places * src/interface.cpp: Changed order of keyboard modifiers. Split view and object menus. * src/verbs.cpp: A couple fixes in mnemonics to better match shortcuts * samples/tux.svg: Added missing sodipodi namespace, added namedview 2003-12-24 Alexander Clausen * src/file.cpp src/modules/system.cpp: Fix for 860199; returning NULL in sp_module_system_open when doc == NULL; added error dialog. * src/main.cpp: Add error dialog when file given on command line does not exist, and create an empty document in that case. 2003-12-24 MenTaLguY * src/verbs.cpp: renamed 'XOR' to 'Exclude' on the menu * src/object-ui.cpp: moved object-specific menuitems out onto the main context menu, instead of sequestered in their own submenus. 2003-12-24 Alexander Clausen * src/interface.cpp: Added partial DND (drop part only for now) for image/svg and image/svg+xml, and a tweak to make uri-dnd with konqueror work. 2003-12-24 Daniel Borgmann * src/interface.cpp src/verbs.cpp src/object-ui.cpp src/modules/menu.cpp: Added mnemonics and some HIGification * src/verbs.cpp: New: sp_action_get_title(), get action name without underscores (for use in dialog titles or other places without mnemonics) 2003-12-23 bulia byak * src/helper/sp-canvas.h: float-to-double fix * src/sp-namedview.h src/sp-namedview.cpp: New namedview attributes for zoom and window geometry; functions for updating them from a desktop and for setting up a desktop from these attributes * src/preferences-skeleton.h: new options.savewindowgeometry * src/attributes.h src/attributes.cpp: New namedview attributes * src/desktop.cpp: Remove/comment out extraneous code. Float-to-double fixes, prevent sliding when zooming in at max zoom. * src/file.cpp src/main.cpp src/interface.cpp: Added document_from_window and window_from_document hooks to file opening and saving functions * src/document.cpp: New: inkscape_rel2abs() (based on g_rel2abs by Shigio Yamaguchi), store absolute filenames in document->uri. Fixed reading namedview template from preferences, fixed namedview template id, added comments. * src/nodepath.cpp: Ctrl + click node: delete node * src/desktop.cpp src/file.cpp src/file.h: New save confirm dialog (patch by spark) 2003-12-23 MenTaLguY * src/desktop.cpp: shortened rulers to canvas dimensions for now * src/main.cpp, src/Makefile.am: renamed DATADIR to INKSCAPE_DATADIR for the remaining platforms 2003-12-23 Peter Moulder * src/desktop-snap.h, src/desktop-snap.cpp (all functions): Indicate that the given point(s) aren't modified by these functions. 2003-12-22 bulia byak * src/nodepath.cpp: Ctrl + Alt + click node: toggle smooth/cusp/symmetric. * src/select-context.cpp: No more snapping back to the origin because of drag tolerance (once you trespass the drag tolerance limit once, it does not affect you anymore). * src/knot.cpp: Used global drag tolerance, no snapping to the origin. * src/node-context.cpp: Click outside of nodepath deselects. Added drag tolerance for selecting non-selected paths by click. Removed drag_escaped - there's no dragging to escape in node context (only in knot). 2003-12-22 bulia byak * src/nodepath.cpp src/nodepath.h>: restrict control handle movement with ctrl, alt, shift; utility functions for radial coordinates; fixed several crashes when nodepath operations are called but there's no nodepath * src/desktop.cpp: filled in sp_desktop_set_coordinate_status implementation, added comment 2003-12-22 Peter Moulder * src/helper/bezier-utils.cpp (sp_darray_center_tangent, sp_darray_left_tangent, sp_darray_right_tangent), src/helper/bezier-utils.h, src/sp-spiral.h, src/sp-spiral.cpp (sp_spiral_get_tangent): Make these functions static. * src/helper/bezier-utils.cpp (GenerateBezier): Back out accidental commit of inserted g_assert(!isnan(bezier coordinate)). (Having a NaN bezier coordinate is usually a problem, perhaps worth warning about, but it's hard to make it impossible, so it shouldn't be g_assert.) Reported by bulia byak. 2003-12-22 Nathan Hurst * Added a new class NR::Point which will replace NRPoint throughout the code, and replace things like .cx, .cx in the circle structure. 2003-12-21 MenTaLguY * Finally cleaned up the linker issues 2003-12-21 Peter Moulder * src/Makefile.am (inkscapelib_src): src/livarot/Makefile.am (libvarot_a_SOURCES): Add some header files to SOURCES, so that `make distcheck' works. * src/style.cpp (sp_style_read_ipaint): Skip leading whitespace. Fixes #853804. Improves rendering of Dia-exported SVG. 2003-12-20 Peter Moulder * src/sp-spiral.cpp (sp_spiral_set): Fix clamping of t0 value: change min from -1.0 to 0.0 as per all other t0 clamps and as required in some circumstances by sp_spiral_get_xy. (sp_spiral_fit_and_draw): Avoid useless adjacent dups in point sampling. (sp_spiral_fit_and_draw, sp_spiral_set_shape): Call proper tangent routine instead of trying to estimate from samples. (sp_spiral_get_tangent): New function. * src/helper/bezier-utils.cpp (sp_bezier_fit_cubic): Implement as a call to sp_bezier_fit_cubic_r. (sp_bezier_fit_cubic_full): Mark *tHat1 and *tHat2 as const. (sp_bezier_fit_cubic_full, ChordLengthParameterize): Add minimal handling for the case where the input data is a zero-length path. (NewtonRaphsonRootFind): If "improved" value is NaN or +/-inf then return the original. * src/libnr/nr-macros.h (CLAMP): Change the behaviour if the first argument is NaN: previously it would return NaN, now it returns the requested lower bound. Document the behaviour. Add an assertion that the requested lower bound <= the requested upper bound. * src/libnrtype/nr-type-ft2.cpp (nr_typeface_ft2_lookup): Change apparently-erroneous arguments to CLAMP, and add a FIXME comment indicating that the new arguments are just a guess as to the original intent. 2003-12-20 MenTaLguY * src/help.cpp, glade/about_svg.tmpl, glade/about.svg: fixed version display in about box * src/desktop.cpp, src/desktop.h, src/document.cpp, src/document.h: added sp_desktop_item_at_point() 2003-12-19 bulia byak * src/sp-item.cpp src/sp-item.h: new sp_item_get_arenaitem (by mental) * src/main.cpp src/file.cpp src/file.h src/dialogs/export.cpp: export UI improvements (patches from the tracker) * src/select-context.cpp: shift-click selection is now in root_handler, uses sp_document_item_at_point(); changed shift-rubberband selection to always select instead of toggle * src/document.h src/document.cpp: wrong order of arguments in overlap() fixed; new: sp_document_item_at_point(), uses sp_item_get_arenaitem * src/Makefile.am: fix: ps.c -> ps.cpp * src/nodepath.cpp: dragging node with ctrl+alt restricts it to the directions of its handles and their perpendiculars 2003-12-19 MenTaLguY * Fixed most shortcut key regressions from the SPAction rework * Renamed the Inkscape class (struct really) to Inkscape::Application; we can now use the Inkscape namespace. * src/toolbox.cpp, src/helper/action.cpp, src/helper/action.h: SPActions now know their desktop, and toolbar buttons get it assigned correctly * src/desktop.cpp, src/interface.h, src/interface.cpp, src/verbs.cpp: Verbs now use the desktop associated with an action rather than SP_ACTIVE_DESKTOP 2003-12-18 Jon A. Cruz * fix for 859133; Reduced number of generated events. 2003-12-18 Jon A. Cruz * src/widgets/sp-color-gtkselector.cpp: fix for 859131; Changed descriptive name of GTK+ selector. 2003-12-18 MenTaLguY * First steps towards making actions per-view 2003-12-17 Jon A. Cruz * src/widgets/sp-color-notebook.cpp: fix for 859128; changed selectors to grow when given more space. 2003-12-17 Jon A. Cruz * Converted color selectors to C++ classes. 2003-12-18 Nathan Hurst * Merged NRPointF and D, similarly Matrix and Rect. 2003-12-18 Peter Moulder * src/toolbox.cpp: re-added spiral button (reverting MenTaLguY's change). 2003-12-17 bulia byak * src/xml/repr-io.cpp src/xml/repr.h: fix to suppress formatting whitespace when serializing text and its children * src/select-context.cpp: shift now prevents dragging objects, creating rubberband instead 2003-12-17 Nathan Hurst * provided some initial thoughts on how to do Points uniformly across inkscape. geom.h * partial currying of zoom menu 2003-12-17 MenTaLguY * src/toolbox.cpp: removed spiral button 2003-12-16 bulia byak * src/nodepath.cpp src/nodepath.h: node drag is now restricted to hor/vert by ctrl 2003-12-16 bulia byak * src/seltrans.cpp: fix for 860201; ctrl restricts rotation by 15 degrees (from sodipodi); used new status display function * src/sp-text.cpp: removed non-printable char error into text-context, removed extraneous assignment * src/verbs.cpp: typo fix * src/knot.cpp: in cancelling drag, use the knot's desktop instead of active; add statusbar flash * src/draw-context.cpp: changing useful messages to statusf_flash, removing useless debug output * src/nodepath.cpp: statusbar error message if joining nodes fails; expanded update_statusbar * src/select-context.cpp: statusbar flash when esc cancels selection or drag * src/selection.cpp: expanded update_statusbar * src/text-context.cpp: used statusf_flash for no-break space, added non-printable char error * src/tools-switch.cpp: added default statusbar message for each tool * src/desktop.cpp: new handler for status_set, with timeout; initialize message in statusbar * src/view.cpp src/view.h: status_set signal: added msec, removed isdefault; added _flash and _error functions for temporary statusbar display; added docs 2003-12-14 Ted Gould * src/widgets/button.cpp, src/helper/action.h, src/helper/action.cpp, src/verbs.h, src/verbs.cpp, src/toolbox.cpp, src/shortcuts.h, src/shortcuts.cpp, src/interface.h, src/interface.cpp: Adding in a sp_verb_t to identify verbs to make later conversions easier. Also adding an arguement to the perform function of SPActionEventVector so that data can be passed to modules (when they're converted to action/verb). 2003-12-14 MenTaLguY * src/view.h, src/view.c: added new utility things for setting status * src/draw-context.c, src/text-context.c, src/view.c, src/view.h: retired sp_status_display() and sp_status_clear() 2003-12-14 bulia byak * src/verbs.h src/verbs.c: changed 'offset' to 'outset' (more logical), added simplify path command * src/interface.c: added sp_key_name to make shortcuts more readable, added simplify path command, regrouped commands more logically * src/shortcuts.c: changed shortcuts for boolean ops, readability, minor cleanups * src/inkscape.c: increased max length of recent documents list to 15, fixed trimming the list * src/seltrans.c: fixed crash when scaling very small objects at max zoom 2003-12-12 MenTaLguY * doc/Makefile.am, Makefile.am, configure.in: include doc/ subdirectory in distribution tarballs * src/widgets/icon.c: final tweaks for getting icon highlights right on buttons (temporary hack, hopefully) * src/splivarot.cpp: compilation fix * src/widgets/sp-color-notebook.c: minor tweak so selector menu is a little more obvious 2003-12-12 bulia byak * src/svg/svg-path.c src/desktop.h src/libnr/gen_nr_config.c src/libnr/nr-object.c src/libnr/nr-types.h: made all floats doubles and all shorts ints in libnr; maximum zoom is increased to 256; SVG paths are stored with 8 digits precision (was 6) 2003-12-11 bulia byak * src/node-context.c adding node edit statusbar updates * src/selection.c: update statusbar only if selector is active * src/tools-switch.c: update statusbar when selector is activated * src/nodepath.c src/nodepath.h: function for node edit statusbar display; fixes for several tab-cycling and node-deleting bugs * src/sp-path.c: added description for SPPath (used in statusbar display) * src/draw-context.c: moved some messages from console to statusbar * src/view.c src/view.h: utility functions for statusbar display * src/text-context.c: statusbar display for unimode 2003-12-10 Ted Gould * configure.in: Changing to 0.37cvs 2003-12-10 bulia byak * src/verbs.c: SELECT_ALL is now tool-sensitive, comments * src/shortcuts.c: ctrl-a for the SELECT_ALL global verb; h and v for flips * src/interface.c: split edit menu into edit and object * src/node-context.c: removed ctrl-a, now taken care of by the global verb * src/nodepath.c: select_all silently returns if given null arg * doc/keyboard-shortcuts.txt: new shortcuts from wiki 2003-12-09 bulia byak * src/helper/png-write.c: fix for png comments (from sodipodi) * src/nodepath.c: fix for 856700, 856686; a better control point positioning for join_segment * src/shortcuts.c: fix default shortcut for star tool * src/prefs-utils.c src/prefs-utils.h: new *_limited functions to get data guarding against through-the-roof values * src/select-context.c src/node-context.c: using *_limited functions to get preference values * src/document-undo.c: fix in sp_document_maybe_done to combine same-key steps * src/selection-chemistry.c src/nodepath.c: put subsequent same-direction arrow-key movements into one undo step * src/sp-text.c src/sp-text.h: removed the preservews argument of sp_text_insert * src/text-context.c src/text-context.h: if there's no text object selected, keys are not consumed; fixed passing unconsumed keys to parent context; any non-hex-digit now cancels unimode * src/dialogs/transformation.c: re-fixing pjrm's fix properly 2003-12-08 bulia byak * src/sp-text.c: fixed typing non-ascii chars; copied (with fixes) treatment of xml:space from sodipodi 0.33 * src/sp-text.h: small fix from sodipodi 0.33 * src/text-context.c: copied sp_text_context_preedit_reset and related code from sodipodi 0.33; xml:space='preserve' is added to newly created text objects; esc deselects; uncatched keys are passed on; misc fixes 2003-12-08 MenTaLguY * src/widgets/button.c: put errors to rest for now * src/document-undo.c: removed code to limit undo list length 2003-12-07 MenTaLguY * src/widgets/button.c: fixed unsignedness warning 2003-12-06 bulia byak * src/dialogs/align.c: tooltip fix (from sodipodi) * src/libnr/nr-stroke.c: fix for 853827, rendering of short paths (from sodipodi) * src/sp-text.c src/sp-text.h src/text-context.c: enabled home/end in text (from sodipodi) * src/document-undo.c: increased MAX_UNDO to 512 * src/file.c src/dialogs/export.c: fix for 851012: the smallest possible exported png is now 1x1 * src/widgets/font-selector.c: fix for 851789: no exponential display in font size field 2003-12-06 MenTaLguY * src/desktop.c: permit the canvas widget to take keyboard focus * src/widgets/button.c, src/widgets/button.h: reworked perform callback as separate callback, so we can use g_signal_handlers_{un,}block...() on it rather than the stupid semaphore counter thing I had originally. Also switched to sp_icon_new() instead of sp_icon_new_scaled(), as otherwise the small icons were too small (but the large icons are now smaller than they could be... darn it... ><) 2003-12-05 Bryce W. Harrington * style.*, sp-path.*, sp-shape.*, more: Hooking up preliminary support for path markers (arrowheads). Also adding documentation, fixing if statement style, etc. 2003-12-05 MenTaLguY * src/widgets/icon.c, src/widgets/button.c, src/widgets/button.h, src/toolbox.c: Reworked SPButton to derive from GtkToggleButton. * src/svg/svg-length.c, src/helper/units.c: removed #ifdef WIN32 insanity * src/Makefile.am, src/extension.c, src/extension.h, src/extensions-skeleton.h, src/main.c, src/inkscape.c, src/toolbox.c: Removed dead code left over from first extensions implementation * configure.in, src/main.c: removed freebsd-specific test and just check for fpsetmask() instead * src/verbs.c: fixed quit icon 2003-12-04 bulia byak * src/toolbox.c: added convert to curves button, cosmetic changes in aux toolbar * src/text-context.c: made text editing via xml editor undoable * src/nodepath.c: new functions to duplicate node, fixes to node_break and selection functions, new (presently unused) functions for saving/restoring node selection * src/node-context.c: shift-d to duplicate node, all keys now work regardless of capslock * src/document-undo.c: temp fix: undo emits selection_changed signal for node editor to update display * src/selection.c: new function without arguments to emit change_selection signal * src/selection.h: new function without arguments to emit change_selection signal * src/nodepath.h: new functions to duplicate node, new (presently unused) functions for saving/restoring node selection 2003-12-04 MenTaLguY * src/desktop.c: rearranged toolbars so aux toolbar is topmost * src/toolbox.c: made toolbars detachable 2003-12-02 bulia byak * src/file.c: made open and save dialogs modal and transient 2003-12-02 bulia byak * src/interface.c: removed tool attributes command * src/preferences-skeleton.h: added branch for export dialog * src/file.c: made import dialog transient * src/verbs.c: changed some dialog names and tooltips * src/shortcuts.c: changed shortcuts for transform and text dialogs * src/dialogs/display-settings.c: fixed dialog title * src/dialogs/export.c: made unsinkable, remembering size and position, added label for filename 2003-11-30 MenTaLguY * src/xml/repr-io.c, src/attributes.c, src/attributes.h, src/sp-object.h, src/sp-object.c: merged basis for Oka's xml:space support * src/toolbox.c: made tool buttons larger, aux buttons smaller * src/document-undo.c: fixed bug with undo/redo past the beginning/end of the undo history 2003-11-29 bulia byak * src/selection-ch emistry.c src/selection-chemistry.h src/verbs.c src/verbs.h src/shortcuts.c src/interface.c: new function, verb, shortcut (shift-ctrl-v), menu command: paste style (apply the style of copied object to selection). If more than one object is copied, the first one in the clipboard list is taken as the source of the style. 2003-11-30 Peter Moulder * src/style.c (sp_style_merge_from_parent): Fix some unsigned-related bugs with "font-weight=lighter", "font-stretch=narrower", "opacity=...". * src/modules/system.c (sp_module_system_save): Partial fix for unrecognized filetype: show a CRITICAL warning instead of segfaulting due to uninitialized var. * src/document.c (sp_document_new), file.c (file_open_ok, sp_file_open_dialog, sp_file_save_dialog, sp_file_do_import), main.c (sp_main_console), src/module.c (sp_module_finalize, sp_module_input_finalize, sp_module_input_build, sp_module_output_finalize, sp_module_output_build), src/sp-anchor.c (sp_anchor_set), src/sp-image.c (sp_image_set), src/sp-text.c (sp_string_release, sp_string_read_content, sp_string_set_shape), src/sp-use.c (sp_use_release), src/style.c (sp_style_unref, sp_style_merge_property, sp_style_merge_from_parent, sp_text_style_unref, sp_style_read_istring), src/bonobo/embeddable-document.c (sp_bonobo_stream_read, sp_embeddable_document_ps_save), src/dialogs/stroke-style.c (sp_stroke_style_scale_line), src/dialogs/text-edit.c (sp_text_edit_dialog_text_changed), src/helper/sodipodi-ctrl.c (sp_ctrl_build_cache), src/modules/ps.c (sp_ps_print_image), src/widgets/font-selector.c (sp_font_preview_set_phrase), src/widgets/gradient-image.c (sp_gradient_image_size_allocate), src/xml/repr-action.c (coalesce_chgattr, coalesce_chgcontent, free_action), src/xml/repr.c (repr_finalize, sp_repr_merge): Minor cleanup: replace `if (POINTER_EXPR) g_free (POINTER_EXPR)' with the simpler (more readable) `g_free (POINTER_EXPR)'. 2003-11-29 Kees Cook * src/utest/.cvsignore: adding "Makefile" * src/desktop.c: sp_desktop_pop_event_context could use uninit'd *ec * src/desktop.h: missing declaration of sp_desktop_zoom_page_width * src/libnrtype/nr-rasterfont.c: give *spx and srs default values * dialogs/dialog-events.c: remove unused *w and *dtw 2003-11-29 MenTaLguY * src/interface.c: switched to GNOME HIG menu style * src/toolbox.c: gave the aux toolbox a fixed (minimum) size so the workspace will jiggle less as different tools are selected. * src/utest/Makefile.am, src/utest/utest.c, src/utest/utest.h, src/xml/Makefile.am: turned the utest stuff into a giant .h file again, which hopefully won't confuse things like the .inc extension did. 2003-11-29 bulia byak * shortening tooltips, new verb and menu command for zoom to page width 2003-11-29 Bryce Harrington * README: Updating "Sodipodi" to "Inkscape", removing some obviously obsolete bits. * inkscape.1.in, inkscape.pod: Totally rewriting manpage from scratch. The old one appeared to be for some other application, because it was just a list of options, 90% of which aren't implemented. I chose to do it in POD for convenience, but hand edited the 1.in file to remove bits about "Perl Documentation", etc. * General: Some fixes to recently added code that broke the g++ compile. 2003-11-29 Peter Moulder * src/utest/Makefile.am, src/utest/utest.c, src/utest/utest.inc, src/utest/utest.h, src/xml/Makefile.am, src/xml/repr-action-test.c: Split utest.inc into utest.h and utest.c. Update users. Make utest.c,utest.h formatting conform more to doc/coding-style.txt. Have utest.c built into libutest.a (see src/utest/Makefile.am comments). * src/xml/repr-action.c (reverse_log): Add doc comment. Rename some vars. * src/xml/repr-action.c (sp_repr_replay_log, sp_repr_undo_log), src/xml/repr-action.h, src/document-undo.c (sp_document_cancel, sp_document_redo, sp_document_undo): Remove the unused doc argument to sp_repr_replay_log, sp_repr_undo_log. Update callers. 2003-11-28 Peter Moulder * extensions/ai_input.inkmod, extensions/dia.inkmod, extensions/svgz_input.inkmod, extensions/svgz_output.inkmod: Change the filename extension from `foo' to `.foo'; i.e. the filename must end in `.foo' to be considered a match, rather than merely ending in `foo'. It appears that the sole users of this data are in src/system.c (open_internal, save_internal). I've found no documentation needing updating, according to `rgrep -i extension doc'. * src/system.c (open_internal, save_internal): Minor effec tweaks: fewer strlen calculations. * src/dialogs/transformation.c: Fix uninitialized-var bug. 2003-11-28 MenTaLguY * src/document.c, src/document-undo.c, src/document-private.h: renamed SPDocumentPrivate::undo_size to ::history_size. Fixed long-standing undo bug, where maybe_done() would neglect to start a new transaction if the previous transaction log were empty. * src/xml/repr-action-test.c, src/utest/utest.inc: made test control structure a little clearer (hopefully) by hiding it. Also some initial Doxygenification of the unit testing stuff. * src/Makefile.am: added utest/ subdir * doc/architecture.svg: reworked architecture diagram a bit * doc/class-hierarchy.dia: added first shot at documenting the class hierarchy in Dia * src/modules/svg.c, src/modules/win32.c: change "...with xmlns:sodipodi namespace" to "...with extension namespaces" * src/xml/repr-action.c: fixed log optimizer to check SPReprAction::type before coalescing adjacent actions 2003-11-27 Bryce * doc/architecture.svg: Added architecture.svg to try to capture the subsystems at a block layer level. Defining colors, working up basic structure, etc. * Adding defines, functions, etc. for allowing markers into inkscape-stock.h, sp-marker.*, sp-path.c, sp-shape.h, style.*, and dialogs/stroke-style.c * Added some new UI utility functions to spw-utilities.* and changed dialog/stroke-style.c to use them, in order to simplify redundancies in the code a bit. 2003-11-27 MenTaLguY * src/desktop.c: the coord status bar area should not have a resize handle 2003-11-27 bulia byak * all dialogs remember size and position across sessions * all dialogs are unsinkable (re-transientizing to the current document) * all dialogs are closeable by ctrl-f4 and ctrl-w, defocusable by esc * dialogs titles unified, added shortcut display in the titles 2003-11-27 MenTaLguY * src/utest/Makefile.am, src/utest/utest.inc: new minimalist unit testing framework * src/xml/Makefile.am, src/xml/repr-action-test.c: some tests for the XML transaction stuff * src/desktop.c: reshuffled the widgets, switched to an embedded toolbox, switched to using real GtkStatusbars for the status bar, and (for the present) nuked the body of sp_desktop_set_coordinate_status() since it had been #ifdeffed out for ages anyway * src/desktop.h: removed another constant #ifdef * src/widgets/button.c: lobotomized toggle buttons temporarily, so multiple windows having independent tool states wouldn't confuse toolboxes :/ .. the real fix is to rework SPAction and friends to not be so global-minded * src/event-context.h: changed sp_ui_generic_menu to sp_ui_context_menu * src/interface.c: reworked the menu structure and introduced sp_ui_main_menubar to create the menubar; changed sp_ui_generic_menu to sp_ui_context_menu * src/main.c: remove the floating toolbox * src/shortcuts.c: remove shortcuts related to the floating toolbox * src/verbs.c, src.verbs.h: removing floating toolbox verb * src/widgets/sp-toolbox.c, src/widgets/sp-toolbox.h, src/widgets/Makefile.am: nuked floating toolbox window 2003-11-25 bulia byak * src/select-context.c src/preferences-skeleton.h: new option: drag tolerance 2003-11-25 bulia byak * src/dialogs/dialog-events.c src/dialogs/dialog-events.h: new callback and utility functions for defocusing * src/widgets/sp-color-selector.c src/widgets/dash-selector.c src/dialogs/stroke-style.c: spinbuttons, text fields defocus on enter 2003-11-24 bulia byak * src/dialogs/display-settings.c src/display/canvas-arena.c: cursor tolerance now stored in preferences, default changed to 2.0 2003-11-24 bulia byak * src/preferences-skeleton.h: new group for global interface options * src/prefs-utils.h src/prefs-utils.c: new functions for double attributes * src/select-context.c src/node-context.c: nudge distance (without alt) is taken from preferences (default 1 mm) 2003-11-24 bulia byak New keys in node editor: * esc deselects and cancels rubberband and node dragging * ctrl-a selects all nodes * tab and shift-tab cycle through nodes of the current shape 2003-11-23 Bryce Harrington * Added include for document.h to knot.c for declaring sp_document_undo, as g++ didn't like not having it declared. 2003-11-22 bulia byak * unified handling of arrow keys in selector and node editor * lots of new keys for switching tools and calling dialogs * space works as temporary selector toggle * new: tools-switch.{c,h} utilities for switching tools * cleaned up zoom shortcts (1-5) * keys for toggling grid (#) and guides (|) * esc deselects, cancels rubberband selection, dragging or transformation (in selector) * quit (ctrl-q) now works everywhere * new document is opened on startup if none was given on command line * closing last open document shuts down the program * floating toolbox is at most one copy, as are other dialogs * toolbox command is moved to the dialogs menu, ctrl-` as shortcut * document windows closeable by ctrl-f4 * cleaned up status line messages, changed "items" to "objects" * quit confirmation dialog appears near the cursor and is transient * fix: killing quit confirmation dialog was interpreted as No instead of Cancel * preferences are now saved in case of a crash * preferences are saved on exit * new: prefs-utils.{c,h} utilities for handling preferences * misc fixes * misc shortcuts 2003-11-18 Ted Gould * src/modules/system.c: Passed the wrong pointer. Fix is by Robert Crosbie. 2003-11-18 Ted Gould * src/widgets/sp-toolbox.c: Adding in an include for gtkimage.h to get the stock functions. This fixes the build under g++. 2003-11-18 Ted Gould * src/modules/extension.c: Changing mkstemp to g_mkstemp for compatibility. 2003-11-17 Kees Cook * configure.in: SF Patch #843537: more cast corrections from joncruz 2003-11-17 Ted Gould * src/modules/init.c: Changing the process for handeling a directory that doesn't exist. Now passing out a warning, and then returning. The warning is on the command line so most users won't have to deal with it (it _shouldn't_ happen anyway ;) Fixes: #843333. 2003-11-17 Kees Cook * SF Patch #841940: autoconf update from joncruz * SF Patch #842949: lpr fixes from Lynn Kerby * SF Patch #842951: variable declaration fixes in interface.c * SF Patch #842953: small color picker update from John Bintz * SF Patch #842955: additional Darwin updates from Peter * Fixed stroke style literal string bug that caused warnings * SF Patch #842958: updated inkscape.desktop.in slightly * SF Patch #843170: freetype include corrections * SF Patch #843326: fixups for g++ compilation from joncruz * Adding some more missing "extern C" sections for g++ compiles * Small type corrections to quite g++ during -Wall * Changed all the #endif // __cplusplus into a standard C comment 2003-11-16 MenTaLguY * src/document.c: reworked sp_desktop_items_*in_box family to be layer-aware 2003-11-16 Kees Cook * Cleaned up "desactivate" into "deactivate" * Fixed GDK_SCROLL event from mouse wheel scrolling * Cleaned up .cvsignore entries for fewer cvs warnings 2003-11-16 MenTaLguY * dialogs/xml-tree.c: events should not be intercepted for the XML dialog 2003-11-16 MenTaLguY * src/version.c: ME R DUM. Had the arguments to sscanf() reversed. 2003-11-16 Ted Gould * Updating everything so that it builds under g++ again. Much of the updates were to the recently checked in modules code. 2003-11-16 MenTaLguY * New version code (version.c/version.h) * Introduced inkscape namespace in parallel with sodipodi namespace * Fixed a lot of attribute enum names to reflect sodipodi versus inkscape namespaces * src/document.c: new version processing, plus namespace fixes * SP_OBJECT_WRITE_INKSCAPE is now SP_OBJECT_WRITE_EXT * Inkscape and Sodipodi versions are tracked separately * First crack at layers! set inkscape:groupmode to "layer" or "group" depending on how you want a group to behave * A little dead code removal 2003-11-15 MenTaLguY * Mege Jon's improved src/help.c patch from the mailing list (with some temporary cruft of my own that I hope he'll forgive me for) 2003-11-14 Ted Gould * Fixed up the module code alot. Now extentions are usable with a XML file in the /usr/share/inkscape/modules directory. 2003-11-12 Jon Cruz * Fix warnings due to missing casts - nr-rasterfont.c (840539) * Fix warnings due to missing casts - desktop-snap.c (840543) * Fix warnings due to missing casts - help.c (840545) 2003-11-11 Robert Crosbie * Remove kde option from configure (840504) * Remove icon hash from sp_icon_new_full (840506) 2003-11-11 magnethead * src/dialogs/transformation.c (sp_transformation_dialog_new): Removed images from tabs * src/dialogs/object-properties.c (sp_object_properties_dialog): Removed images from tabs 2003-11-11 Ted Gould * Starting 0.36 development 2003-11-10 Ted Gould * Release 0.35 2003-11-08 Bryce Harrington * Updated About dialog * Fixed bug on Editing Windows dialog 2003-11-08 Manny the Gnome * Remove KDE dialog option 2003-11-06 Bulia Byak * Add cursor-key support 2003-10-19 MenTaLguY * src/xml/repr-io.c (sp_repr_svg_read_node): handle CDATA sections properly * Most of the tree. Unsodipodified pretty much everything I could find. New temporary icons, etc etc... 2003-10-23 Ted Gould * src/*/Makefile.am: Changing the include paths to make distcheck get closer to passing. 2003-10-22 Ted Gould * configure.in: Changing version to 0.32-hydra1. This is after much discussion and serious contemplation (okay, we never really got out the magic eight ball). 2003-10-22 Ted Gould * src/dialogs/desktop-properties.c, src/widgets/spw-utilities.c, src/widgets/spw-utilities.h: Cleaning up desktop properties by abstracting things into functions. This patch was written by Bryce Harrington and is tracker entry #822497. 2003-10-21 Ted Gould * src/interface.c: Changing it so there is an Open Recent menu on the Sodipodi menu and the toolbar menu. This removes some clutter in the menu. This is tracker entry #820223 and the author is unknown. 2003-10-21 Ted Gould * src/dialogs/text-edit.c: Make it so that changes can be applied to multiple blocks of text. This patch was submitted by Petr Kovar and is tracker #816676. 2003-10-17 Ted Gould * src/dialogs/object-properties.c: Applying a patch by Lynn Kerby which is tracker number 799363. This makes it so that if just the units are changed the object does not get updated. 2003-10-16 Ted Gould * src/Makefile.am: Adding the modules to the linking of the spsvgview executable. This fixes the KDE build. This was tracker issue 819963 but unfortunately we don't know who submitted it. 2003-10-15 Ted Gould * configure.in: Adding a -hydra to the version number. 2003-10-15 Ted Gould * Changelog: Applying the patch from Mental to do transactions in the XML. It is tracker number: 819745. More info to follow which is (written by Mental) * src/document-private.h: removed old SPAction struct and modified SPDocumentPrivate to use new SPReprAction type * src/document-undo.c: removed all sp_action stuff, sp_document_priv_done(), and all repr callbacks (sp_document_set_sensitive): start/suspend transactions on Repr document (sp_document_done): now just a wrapper for sp_document_maybe_done(), of which it is a special case (sp_document_maybe_done): use new transaction facility, and properly trim undo list size to MAX_UNDO (sp_document_cancel): new SPDocument method for aborting (and undoing) current operation (sp_document_undo, sp_document_redo): rewritten for transactions * src/document.c (sp_document_init): updated SPDocumentPrivate initialization (sp_document_destroy): clean up partial action list (sp_document_idle_handler): removed undo stack warning (sp_document_warn_undo_stack): removed * src/document.h: added sp_document_cancel() * src/sp-object.c (sp_object_invoke_build): minor cleanup (sp_object_repr_child_added, sp_object_repr_remove_child, sp_object_repr_order_changed, sp_object_repr_attr_changed, sp_object_repr_content_changed): removed calls to document callbacks * src/dialogs/xml-tree.c: enabled delete button for _all_ attributes [I later plann on enabling/disabling it based on a call to the repr's change_attr veto callback] (after_tree_move): roll back the transaction if the node didn't want to be moved (on_attr_select_row_enable): used to be on_attr_select_row_enable_if_not_id() (cmd_indent_node, cmd_unindent_node): removed usage of sp_repr_move in favor of simple operations with transactions * src/widgets/sp-xmlview-tree (repoint_nodes): no longer needed (add_node): switched to an if cascade instead of a switch statement, since SP_REPR_TYPE (repr) is no longer an integer (tree_move): use simple operations instead of sp_repr_move * src/xml/Makefile.am: added sp-action.c to build * src/xml/repr-action.c, src/xml/repr-action.h: transaction logging facility for reprs using linked lists of SPReprAction structs (conceptually, logs) * src/xml/repr-private.h: introduced SPReprClass for different node types and added SPRepr::doc field for doc pointer. SPReprDoc is now a proper subclass of SPRepr. * src/xml/repr-util.c (sp_repr_move, sp_repr_transfer_ids): removed * src/xml/repr.c: added logging macros and SPRepr subclassing * src/xml/repr.h: removed sp_repr_move() 2003-10-09 Ted Gould * src/libnrtype/nr-type-directory.c: Applying a patch to fix the compile from Vitaly Lipatov. 2003-10-08 Ted Gould * glade/icons.svg src/nodepath.c src/nodepath.h src/toolbox.c src/dialogs/node-edit.c src/dialogs/node-edit.h: Adding another patch from Bob Jamison which is in the tracker under 819054. This patch adds an alternate join function. It also adds this function to the tool box with an icon. 2003-10-08 Ted Gould * src/.cvsignore: Adding in spsvgview for cleaner diff's 2003-10-08 Ted Gould * src/dialogs/item-properties.c: Submitting a patch from Bob Jamison which is in the tracker under 819043. This adds the ID to the item properties dialog. 2003-10-06 Ted Gould * Changelog: Start of the hydra-october branch 2003-10-06 Lauris Kaplinski * src/libarikkei/Makefile.am: New stuff from ariariki * src/libnrtype/nr-type-xft.c (nr_type_read_xft_list): Moved here * src/libnrtype/nr-type-directory.c (nr_type_build): From ariariki (nr_type_read_private_list): Use libarikkei tokenizer (nr_type_register): Made public * src/libnrtype/Makefile.am: Added libarikkei stuff * configure.in: Added libarikkei/Makefile 2003-09-18 Mitsuru Oka * Initial IA-64 Linux support. * libnr/nr-object.h defined new type NRType. * src/desktop.c ... src/modules/win32.h ... many files: modified all of the unsigned int GObject type by GType and unsigned int NRObject type by NRType. 2003-08-17 Lauris Kaplinski * src/libnrtype/nr-type-ft2.c (nr_typeface_ft2_setup): Check whether font has assigned code points on BMP private area (nr_typeface_ft2_lookup): Map BMP private area directly to glyph index only if it is free, use planes F and 10 for direct mapping 2003-08-17 Danilo Å egan * configure.in: Added "sr" and "sr@Latn" to ALL_LINGUAS. 2003-07-23 Dmitry G. Mastrukov * configure.in: Added Belarusian to ALL_LINGUAS. 2003-07-21 Christian Neumair * src/verbs.c: Fix another typo (preciely->precisely). 2003-07-21 Christian Neumair * src/widgets/paint-selector.c: Fix a typo (colospace->Colorspace). 2003-07-15 Masatake YAMATO * src/helper/sp-ctrlline.h: Fix a typo(x2->x1). 2003-07-12 Yukihiro Nakai * src/text-context.c (sptc_preedit_changed): New signal handler (sp_text_context_setup): Connect "preedit_changed" signal (sp_text_context_root_handler): Return TRUE (needed for Gtk+ IM) * src/verbs.c (sp_verbs_init): Wrap action name and tip into _() 2003-07-11 Lauris Kaplinski * src/event-context.c (sp_event_context_private_root_handler): Handle GDK_SCROLL (thanks to Tomas Znamenacek) * src/xml/repr-util.c (sp_xml_dtoa): Do not print trailing zeroes * src/xml/repr.c (sp_repr_document_new): Removed ATTLIST xmlns:xlink * src/libnr/nr-svp-private.h: New file 2003-07-09 Lauris Kaplinski * src/libnr/nr-stroke.c: Implement most functionality * src/libnr/nr-svp-uncross.c (nr_svl_uncross_full): Process some corner cases properly 2003-07-07 Masatake YAMATO * src/shortcuts.c (sp_shortcut_table_load): set shortcut for SP_VERB_EDIT_SELECT_ALL. * src/selection-chemistry.[ch] (sp_edit_select_all): New function. * src/verbs.c (sp_verb_action_edit_perform): Added case SP_VERB_EDIT_CLEAR_ALL and SP_VERB_EDIT_SELECT_ALL. (SP_VERB_IS_EDIT): Extended to SP_VERB_EDIT_SELECT_ALL. 2003-07-04 Lauris Kaplinski * src/svg/svg-length.c (sp_svg_length_set): New method * src/sp-spiral.c (sp_spiral_write): Write path here * src/sp-image.c (sp_image_repr_read_image): Treat NULL docbase as current directory * src/sp-gradient.c (sp_gradient_write): Merged code with flatten_attribute (sp_lineargradient_write): Ditto (sp_radialgradient_write): Ditto * src/rect-context.c (sp_rect_context_root_handler): Get motion hints * src/helper/sp-canvas.c (SP_CANVAS_UPDATE_PRIORITY): Use higher priority * src/document.c (SP_DOCUMENT_UPDATE_PRIORITY): Use higher priority 2003-06-30 Lauris Kaplinski * src/libnrtype/nr-type-ft2.c (nr_typeface_ft2_glyph_outline_get): Do not load outlines multiple times, fixes serious memleak 2003-06-28 Lauris Kaplinski * src/dialogs/text-edit.c (sp_text_edit_dialog): Added line spacing combo (sp_text_edit_dialog_update_object): Update line spacing (sp_text_edit_dialog_read_selection): Update control * src/sp-text.c (sp_text_set): Parse "sodipodi:linespacing" (sp_text_set_shape): Use line spacing * src/attributes.c: Added "sodipodi:linespacing" 2003-06-27 Lauris Kaplinski * src/dialogs/desktop-properties.c (sp_dtw_border_layer_toggled): New callback (sp_desktop_dialog_new): Added border layer (sp_dtw_update): Track border layer * src/spsvgview.c: Implement slideshow * src/sp-namedview.c (sp_namedview_set): Track borderlayer * src/desktop.c (sp_desktop_new): Add page border directly to main group (sp_dt_namedview_modified): Track border layer * src/attributes.c: Added "borderlayer" 2003-06-22 Lauris Kaplinski * src/sp-pattern.c (sp_pattern_update): Implemented, patterns show up again (sp_pattern_painter_new): Painter is not GObject anymore, fixes crash (sp_pattern_painter_free): Ditto * src/sp-root.c: Removed namedview tracking * src/sp-object-repr.c (sp_object_type_lookup): Do not register GUI types (sp_object_type_register): New method * src/sp-namedview.c (sp_document_namedview): Moved it here to clean up dependency chain * src/sp-item-group.c (sp_item_group_get_child_by_name): New method * src/main.c (sp_main_gui): Register GUI object types (sp_main_console): Ditto * src/document.c (sp_document_create): Check for namedview using name only * src/Makefile.am (spsvgview_SOURCES): Uncommented spsvgview * src/libnr/nr-object.c: Use listener arrays instead of lists 2003-06-20 Lauris Kaplinski * configure.in: Version 0.33pre 2003-06-19 Masatake YAMATO * src/dialogs/desktop-properties.c (sp_color_picker_clicked): Enable "Close" button. (sp_color_picker_window_close): New function. 2003-06-18 Lauris Kaplinski * src/dialogs/object-properties.c (sp_object_properties_dialog_destroy): Disconnect signals here, fixes crash 2003-06-18 Masatake YAMATO * src/toolbox.c (sp_toolbox_*_create): passed tt to sp_toolbox_new. * src/dialogs/align.c (sp_align_add_button): passed a GtkTooltips object to sp_button_new_from_data. (sp_quick_align_dialog): created a new GtkTooltips object and passed it to sp_align_add_button. * src/widgets/sp-toolbox.c (sp_toolbox_new): passed a GtkTooltips object to sp_button_new_from_data. Fix a spelling miss. * src/widgets/sp-toolbox.h (sp_toolbox_new): passed a GtkTooltips object. 2003-06-17 Lauris Kaplinski * src/sp-image.c (sp_image_set): Fix potential crash (sp_image_update): Move code here, so canvas items do not dereference destroyed pixbuf data * src/seltrans.c (sp_sel_trans_handle_request): Reverse shift behaviour for rotation (thanks to Pat) 2003-06-16 Lauris Kaplinski * src/verbs.c: Added 'print direct' option * src/interface.c (sp_ui_file_menu): Added print direct if needed * src/toolbox.c (sp_toolbox_file_create): Compose print + print direct if needed 2003-06-15 Lauris Kaplinski * src/modules/ps.c (sp_module_print_plain_setup): Added bitmap/ps choice and preferred bitmap resolution selector (sp_module_print_plain_finish): If user prefers bitmap printing, composite full page from NRArena here 2003-06-13 Lauris Kaplinski * src/event-context.c (sp_event_context_private_root_handler): Removed desktop dialog double-click binding * src/widgets/icon.c (sp_icon_new_scaled): New method (sp_icon_new_full): Refactored static method (sp_icon_image_load_svg): Use scale factor * src/xml/repr-io.c (sp_repr_do_read): Unref node after attaching (sp_repr_svg_read_node): Ditto * src/xml/repr.c (sp_repr_document_new): Ditto 2003-06-12 Lauris Kaplinski * src/modules/ps.c: Ported Ascii85 filter from The GIMP 2003-06-09 Lauris Kaplinski * src/modules/kde.cpp (sp_kde_get_save_filename): New method (sp_kde_get_write_filename): New method (sp_kde_get_open_filename): Use dir/filter/title * src/file.c (sp_file_open_dialog): Use KDE file dialog if WITH_KDE (sp_file_save_dialog): Ditto (sp_file_import): Ditto 2003-06-05 Lauris Kaplinski * src/print.c: Only high-level stuff * src/modules/gnome.c: Moved gnome print frontend here * src/modules/ps.*: Moved plain print frontend here 2003-05-25 Lauris Kaplinski * src/sp-item.h: Removed ::menu and ::knot_holder virtual methods * src/object-edit.c: New file, collect all knotholder methods from item implementations here * src/object-edit.h (sp_item_knot_holder): New file * src/object-ui.c: New file, collect all Gtk related methods from object implementations here * src/object-ui.h (sp_object_menu): New file 2003-05-24 Lauris Kaplinski * src/print.c (sp_print_preview_document): Use ::set_preview if present * src/module.h: Added virtual methof for setting preview * src/helper/kde.cpp (sp_module_print_kde_finish): Got working (sp_module_print_kde_set_preview): New method 2003-05-18 Hans Breuer * src/monostd.h : (new file) some defines and includes mostly to make up the WIN32 lack of unistd.h * config.h.win32 src/makefile.msc src/*/makefile.msc : (new files) to build Sodipodi on win32 with M$ toolchain * src/winmain.c : (new file) WinMain in it's own file simply calling main() * src/main.c : build the common main() for win32 too * src/sodipodi.rc : (new file) to compile in the application icon on win32 * src/file.c : use G_DIR_SEPARATOR[_S] instead of '/' ["/"] make the file selection work better on win32 * src/sp-image.c : read images defined by xlink:href="file://... * src/sodipodi.c : #inculed "monostd.h" to get S_ISDIR and S_ISREG on win32 * src/libnr/nr-values.h : when building as DLL exporting variables is quite ugly. Define some constant matrices as static for win32 to avoid exporting. * src/libnrtype/nr-type-directory.c : #include for win32::open() etc. * src/libnrtype/nr-type-w32.c : #ifdef HANGUL_CHARSET, older SDK headers don't have it * src/libnrtype/nr-type-w32.H : #define WIN32_LEAN_AND_MEAN before including to reduce namespace pollution * src/svg/svg-length.c : #include to get WIN32 * src/widgets/icon.c : S_ISREG, S_ISDIR * src/xml/sp-xml.def src/svg/sp-svg.def src/libnr/sp-libnr.def src/libnrtype/sp-libnrtype.def : (new files) to export functios from modules built as DLLs * src/helpers/gnome-utils.c(gnome_uri_list_extract_filenames) : use g_filename_from_uri() * src/toolbox.c src/interface.c : don't leak the uri list * src/xml/repr-util.c : use g_strcasecmp for portability * src/svg/svg-length.c : ... and g_snprintf 2003-05-18 Lauris Kaplinski * src/sp-item.c (sp_item_invoke_print): Only if item is printable * src/display/nr-arena-item.c (nr_arena_item_set_visible): New method (nr_arena_item_invoke_render): Honour visibility * src/dialogs/item-properties.c (sp_item_widget_printability_toggled): Implement * src/sp-item.c (sp_item_set): Added "sodipodi:printable" attribute 2003-05-14 Lauris Kaplinski * src/widgets/button.c (sp_button_set_composed_tooltip): Add primary shortcut dynamically to tooltip 2003-05-13 Lauris Kaplinski * src/toolbox.c (sp_maintoolbox_create_toplevel): Use sp_window_new * src/helper/window.c: New file, implement shortcut processing * src/helper/window.h: New file 2003-05-12 Lauris Kaplinski * src/text-context.c (sp_text_context_forget_text): Set object to NULL before destroying, so resulting selection::changed does not mess up * src/selection-chemistry.c: Removed undo and redo frontends * src/shortcuts.c: Moved shortcut code here 2003-05-11 Lauris Kaplinski * src/zoom-context.c: Removed bogus zoom ui handlers * src/sodipodi.c (sodipodi_init): Initialize some shortcuts * src/toolbox.c (sp_toolbox_button_clicked): New callback (sp_toolbox_button_new_from_verb): New method (sp_toolbox_zoom_create): Use verbs * src/interface.c (sp_ui_menu_activate): Universal callback (sp_ui_menu_append_item_from_verb): New method (sp_ui_view_menu): Use verbs for zoom menu items * src/event-context.c (sp_event_context_private_root_handler): Use actions for certain keycodes * src/verbs.c: New file * src/verbs.h: New file * src/helper/action.c: New file * src/helper/action.h: New file 2003-05-07 Lauris Kaplinski * src/libnr/nr-svp-uncross.c (nr_svl_uncross_full): Break slice endpoints if there can be potential crossing 2003-05-06 Lauris Kaplinski * src/libnr/nr-svp-render.c (nr_svp_render): Fix some running sum problems 2003-05-04 Lauris Kaplinski * src/libnrtype/nr-rasterfont.c (nr_rasterfont_generic_glyph_mask_render): Render using NRSVP and mask OR (nr_rasterfont_ensure_glyph_slot): Build NRSVP 2003-05-03 Lauris Kaplinski * src/helper/Makefile.am: Removed art-utils.h * src/libnr/nr-svp.c (nr_svl_build_finish_segment): New helper (nr_svl_build_moveto): Ditto (nr_svl_build_lineto): Ditto (nr_svl_build_curveto): New helper (nr_svl_from_art_vpath): Use NRSVLBuild (nr_svl_from_art_bpath): New method 2003-05-02 Lauris Kaplinski * sodipodi.desktop.in: Updated by Michael Terry 2003-05-01 Lauris Kaplinski * src/svg/svg-length.c (sp_svg_number_write_d): Fixed rounding overflow 2003-05-01 Christian Schaller * Fixed up desktop.in file to conform to latest freedesktop standard * Fixed up spec.in file to actually work * Added missing extensions-skeleton.h to makefile * Added spec file to EXTRA_DIST 2003-05-01 Lauris Kaplinski * src/display/nr-arena-item.c (nr_arena_item_children): Return correct value (thanks to MentaLguY) 2003-04-29 Lauris Kaplinski * src/libnr/nr-svp.h: Use more compact format for segments * src/libnr/nr-svp.c (nr_svp_from_svl): Use max segment length 2003-04-28 Lauris Kaplinski * src/libnr/nr-svp-render.c (nr_svp_render): New method (nr_pixblock_render_svp_mask_or): New method (nr_pixblock_render_svl_mask_or): Renamed old one (nr_svl_render): Ditto * src/libnr/nr-svp.c (nr_svp_point_wind): Implement (nr_line_point_distance2): Helper (nr_svp_point_distance): Ditto (nr_svp_from_svl): New method, implemented packed format and renamed old one to S(orted)V(ertex)L(ist) (nr_svp_free): Ditto * src/display/nr-arena-shape.h: Port all basics to NRSVP 2003-04-27 Lauris Kaplinski * src/knotholder.c (knot_ungrabbed_handler): Flush object here * src/xml/repr-util.c (sp_xml_dtoa): Take '-' into accounti if copying integral part * src/svg/svg-length.c (sp_svg_length_update): New method * src/sp-spiral.c (sp_spiral_update): New method * src/sp-star.c (sp_star_update): New method * src/sp-ellipse.c (sp_genericellipse_update): Use generic ::set_shape * src/sp-rect.c (sp_rect_update): Use generic ::set_shape 2003-04-24 Lauris Kaplinski * src/libnr/nr-svp-uncross.c (nr_svp_uncross_full): Concat segment start only if within epsilon, snap intersection point at yslice, if close 2003-04-23 Lauris Kaplinski * src/widgets/sp-color-slider.c (sp_color_slider_paint): Use proper style painters, so Gdk/Gtk crash bug does not show up anymore * src/xml/repr-io.c (sp_repr_read_file): Substitute entities (by MentaL) (sp_repr_read_mem): Ditto * src/style.c (sp_style_merge_from_style_string): Complain only if not the end of the style string (thanks to MenTaL) 2003-04-22 Lauris Kaplinski * src/print.c (sp_module_print_plain_begin): Magic by MenTaL * src/libnr/nr-svp-uncross.c (nr_svp_uncross_full): Works properly now for all stress-tests except zap. 2003-04-18 Lauris Kaplinski * src/display/nr-arena-shape.c (nr_arena_shape_update): Switch fill completely to new renderer (nr_arena_shape_render): Ditto, but use masks as before * src/libnr/nr-svp-uncross.c (nr_svp_uncross_full): Pass most stress-tests 2003-04-15 Lauris Kaplinski * src/libnr/nr-svp-render.c (nr_pixblock_render_svp_mask_or): new method (nr_pixblock_render_svp_rgba): Frontend, implement for all pixblock modes (nr_svp_run_A8_OR): Run callback implementation (nr_svp_run_R8G8B8): Ditto (nr_svp_run_R8G8B8A8P_EMPTY): Ditto (nr_svp_run_R8G8B8A8P_R8G8B8A8P): Ditto (nr_svp_run_R8G8B8A8N_R8G8B8A8N): Ditto (nr_svp_render): Implement using generic run callbacks 2003-04-14 Lauris Kaplinski * src/libnr/nr-svp-render.c (nr_pixblock_render_svp_rgba): Do runs properly, skip if coverage stays 0 2003-04-13 Lauris Kaplinski * src/libnr/nr-svp-render.c: Moved here from old arena code * src/libnr/nr-svp-render.h: Ditto * src/libnr/nr-svp.c: Ditto * src/libnr/nr-svp.h: Ditto * src/display/nr-arena-shape.h: Optional experimental new renderer * src/libnrtype/nr-typeface.h: Port to NRObject * src/display/canvas-arena.c (sp_canvas_arena_init): Use active object listener instead of g-signals (sp_canvas_arena_destroy): Ditto * src/display/nr-arena.h: Derive from NRActiveobject * src/display/nr-object.c (nr_object_delete): proper lifecycle management (nr_object_setup): Ditto, automatic object (nr_object_release): Ditto (nr_active_object_get_type): Added NRActiveObject * src/display/nr-object.h: Added NRActiveObject 2003-04-12 Lauris Kaplinski * src/display/nr-object.c: Reimplement in standalone way * src/display/nr-object.h: Reimplement in standalone way 2003-04-06 Lauris Kaplinski * src/sp-marker.c (sp_marker_show_dimension): Reimplement (sp_marker_show_instance): Ditto * src/display/nr-arena-shape.c (nr_arena_shape_finalize): Detach markers * src/sp-shape.c (sp_shape_update_marker_view): Test orientation 2003-03-25 Lauris Kaplinski * src/display/nr-arena-item.c: Removed ::event signal * src/display/nr-object.h: Frontend for future glib-free object system 2003-03-21 Lauris Kaplinski * src/sp-shape.c (sp_shape_update): Update marker properly (sp_shape_set_marker): Parse all three marker types * src/sp-marker.c (sp_marker_update): Set reference point in child2parent matrix (sp_marker_show_dimension): Copy and set arena items properly (sp_marker_show_instance): Set base transfoarm and scale by line width if needed 2003-03-17 Lauris Kaplinski * src/uri-references.c (sp_uri_reference_resolve): Allow '_' and '-' in xlink names. 2003-03-15 Lauris Kaplinski * src/display/nr-arena-item.h: Made opacity 8-bit integer 2003-03-12 Lauris Kaplinski * src/sp-marker.c (sp_marker_update): Do it properly (sp_marker_write): Do it properly (almost) 2003-03-11 Lauris Kaplinski * src/print.c (sp_module_print_plain_class_init): Use correct destructor * src/sp-marker.c (sp_marker_set): Implement all attributes 2003-03-09 Lauris Kaplinski * src/sp-object-repr.c (sp_object_type_lookup): Added marker type * src/sp-marker.h: New file * src/sp-marker.c: New file * src/display/nr-arena-image.c (nr_arena_image_render): Use pixblock area instead the active area (that may be bigger) * src/helper/kde.cpp: Added SPModulePrintKDE object (sp_kde_get_module_print): Contructor * src/print.c: Port to modules, add KDE option * src/module.c (sp_module_register): Check for id, fix crash (sp_module_unregister): Ditto (sp_module_print_get_type): Implement SPModulePrint * src/document.h: Renamed private to priv to be nice with c++ * src/Makefile.am (kdeldadd): Added LIB_KDEPRINT * configure.in: Enable modules by default 2003-03-04 MenTaLguY * src/desktop.c: changed zoom_status to a spin button with logarithmic increment and a handy context menu (sp_dtw_zoom_*): added various event handlers for the new zoom spin button (sp_desktop_zoom_page): factored out code duplicated with zoom-context.c (sp_desktop_zoom_selection): ditto (sp_desktop_zoom_drawing): ditto (sp_desktop_widget_init): removed unused SPDesktopWidget::zoom member and replaced zoom label with a spin button * src/desktop.h: removed unused SPDesktopWidget::zoom member, added new sp_desktop_zoom_* methods * src/zoom-context.c (sp_zoom_drawing): factored out code to desktop.c (sp_zoom_page): NRRectD -> NRRectF, factored out code to desktop.c (sp_zoom_selection): factored out code to desktop.c 2003-03-06 Lauris Kaplinski * src/helper/Makefile.am: Compile KDE module if needed * src/main.c (sp_main_gui): Initialize/shutdown KDE module if WITH_KDE * src/file.c (sp_file_open_dialog): Use KDE file dialog, if WITH_KDE * src/Makefile.am: Add KDE libraries if needed * configure.in: Added --with[out]-kde configuration option * autogen.sh: Added (again) libtoolize * acinclude.m4: KDE specific autostuff * src/helper/kde.cpp: New file * src/helper/kde.h: New file * src/helper/kde-private.h: SPKDEBridge sefinition for moc preprocessor 2003-03-03 Lauris Kaplinski * src/widgets/sp-color-slider.h: Use LGPL * src/widgets/sp-color-slider.c: Use LGPL * src/libnr/nr-rect.h: Use sensible NULL/empty semantics for union and intersection * src/libnr/nr-rect.c: Ditto * src/libnr/gen_nr_config.c: Generate basic typedefs (borrowed fromlibart) * src/display/nr-arena-item.c (nr_arena_item_invoke_update): Cleanup (nr_arena_item_invoke_render): Ditto 2003-03-01 Lauris Kaplinski * src/modules/*: Various module implementations by Ted Gould * extensions/*: Put various unsorted extensions stuff here * src/module.c: New file * src/module.h: New file * src/draw-context.c (sp_draw_context_root_handler): Use 'a' instead of '+' as append/new toggle (spdc_concat_colors_and_flush): Cut continuation tolerance to avoid extra points at corners (spdc_pen_set_point): Draw line segments if appropriate 2003-02-25 Lauris Kaplinski * src/main.c (main): Use bind_textdomain_codeset to force utf-8 encoding (sp_main_console): Init gdk if WITH_XFT * src/file.c (sp_export_get_rows): Do not set EMPTY flag on pixblock, or background will be forgotten 2003-02-24 Lauris Kaplinski * src/dialogs/align.c (sp_quick_align_dialog): Added "distribute" tab (sp_align_distribute_h_clicked): New method (sp_align_distribute_v_clicked): Ditto * configure.in: Removed PACKAGE_LOCALE_DIR definition * src/Makefile.am (INCLUDES): Set PACKAGE_LOCALE_DIR here * configure.in: Skip xft checking if fontcofig present 2003-02-23 Lauris Kaplinski * src/print.c (sp_print_fill): Use new paint server signature (does it work?) * src/document.c (sp_document_idle_handler): Use new flags signature (sp_document_ensure_up_to_date): Ditto * src/sp-shape.c (sp_shape_modified): Removed style_modified, instead set style here, if flags indicate the need * src/sp-text.c (sp_tspan_update): Calculate relative distances here (sp_text_update): Ditto * src/sp-object.h: Split update and modified flags, involves changes in most places actually using them * src/gradient-chemistry.c (sp_gradient_ensure_private_normalized): Recycle available gradients, instead of always creating new (sp_gradient_ensure_radial_private_normalized): Ditto * configure.in: Version 0.32pre 2003-02-22 Lauris Kaplinski * src/sp-text.c (sp_text_set_shape): Honour single dx and dy attributes * configure.in: Added check for fontconfig to retrieve nonstandard include directories 2003-02-21 Lauris Kaplinski * src/sp-image.c (sp_image_set): Set canvas item properties in ::update (sp_image_update): Implement * src/dialogs/fill-style.c (sp_fill_style_widget_paint_changed): Set CMYK before RGB * src/dialogs/stroke-style.c (sp_stroke_style_paint_changed): Set CMYK before RGB 2003-02-20 Lauris Kaplinski * src/sp-gradient.c (sp_gradient_rebuild_vector): Fix crash if 2 stops coincide * src/libnrtype/nr-rasterfont.c (nr_rasterfont_generic_glyph_mask_render): Get real bounding box, clip to pixblock area for SVP glyphs * src/sp-polygon.c (sp_polygon_write): Write points always 2003-02-18 Lauris Kaplinski * src/dialogs/export.c (sp_export_dialog): Default to document name + png (sp_export_spinbutton_new): Pack more functions here * src/sp-chars.c (sp_chars_update): Implement * src/sp-text.c (sp_tspan_update): Implement * Makefile.am: Port back to glib gettext * configure.in: Port back to glib gettext * autogen.sh: Copied working version from The Gimp * src/helper/sp-canvas.c (sp_canvas_paint_rect): Try to fit area into pixelstore instead of using default image size always 2003-02-17 Lauris Kaplinski * src/sp-path.h: Turned SPPath/SPShape hierachy upside down, so they make sense now, when we do not derive text and clippath from SPPath anymore * src/sp-shape.h: Ditto 2003-02-16 Lauris Kaplinski * src/file.c (file_open_ok): Set directory if OK clicked on it (thanks to Aron Rubin) (file_import_ok): Ditto * src/sp-ellipse.c (sp_round): Fix sp_round 2003-02-15 Lauris Kaplinski * src/widgets/paint-selector.c (sp_paint_selector_system_color_set): New method (sp_paint_selector_set_mode_color): Added 'get from dropper' checkbox * src/dialogs/object-properties.c (sp_object_properties_color_set): Handler of system 'color_set' signal, used for getting color value from dropper * src/dialogs/stroke-style.c (sp_stroke_style_paint_system_color_set): New method * src/dialogs/fill-style.c (sp_fill_style_widget_system_color_set): New method * src/toolbox.c (sp_toolbox_draw_create): Added dropper tool * src/sodipodi.c (sodipodi_class_init): Added 'color_set' signal (sodipodi_set_color): Frontend to signal (sodipodi_init_config): Use config_name instead of hardcoded 'preferences' * src/dropper-context.c (sp_dropper_context_root_handler): Scale colors to [0.0 - 1.0] range and signal hub * src/widgets/menu.c: New file, implement sensible menu API * src/widgets/menu.h: New file 2003-02-13 Lauris Kaplinski * src/dropper-context.h: New file * src/dropper-context.c: New file 2003-02-11 Lauris Kaplinski * src/desktop.c (sp_desktop_widget_init): Create tooltips, enable sticky zoom (sp_desktop_widget_size_allocate): Calculate sticky zoom by area instead of MIN (x, y) * src/helper/sp-canvas.h: Added floating point scroll coordinates * src/helper/sp-canvas.c (scroll_to): Preserver floating point coordinates * src/display/nr-arena-group.c (nr_arena_group_set_child_transform): Do not force full update if not needed * src/display/nr-arena-item.c (nr_arena_item_set_clip): Do not force full update if not needed (nr_arena_item_set_mask): Ditto (nr_arena_item_set_transform): Ditto 2003-02-09 Lauris Kaplinski * src/libnr/nr-gradient.c (nr_lgradient_render_R8G8B8A8N_EMPTY): New shortcut * src/libnr/nr-gradient.h: Made x0 and x0 integers - this introduces possible upt to 0.7 pixel error, but other rendering parts are not exact anyways * src/sp-paint-server.h: Fill function signature change 2003-02-08 Lauris Kaplinski * src/libnr/nr-gradient.c (nr_rgradient_render_generic_symmetric): Special case NR_PIXBLOCK_MODE_R8G8B8A8N and full opacity * src/sp-gradient.c (sp_radialgradient_set): Initialize focal point to center if unset * src/libnr/nr-gradient.c (nr_lgradient_render_R8G8B8A8N): Special-cased full opacity * configure.in: 0.30.1 * src/libnrtype/nr-rasterfont.c (nr_rasterfont_ensure_glyph_slot): Use 32 bit integer bbox initially before deciding whether it fits in 16 bit 2003-02-08 gettextize * Makefile.am (SUBDIRS): Add intl, m4. (EXTRA_DIST): Add config.rpath. * configure.in (AC_OUTPUT): Add intl/Makefile, po/Makefile.in, m4/Makefile. 2003-02-07 Lauris Kaplinski * src/help.c (sp_help_about): Make default window size the same as document * src/style.c: Use custom winding rule and stroke parameter enumerations * src/enums.h: Define winding rules and stroke parameters 2003-02-06 Lauris Kaplinski * src/sp-rect.c (sp_rect_rx_set): Set ::set value(s) (sp_rect_ry_set): Ditto * src/sp-item.c (sp_item_update): Set arena item transform here * src/dialogs/fill-style.c (sp_fill_style_widget_update_repr): Made non-recursive (sp_fill_style_widget_update): Ditto * src/sp-shape.c (sp_shape_write_transform): Working path tranformation optimizer * src/widgets/sp-color-slider.c (sp_color_slider_adjustment_value_changed): Add some extra pixels around arrow dirtified area (sp_color_slider_paint): Use gtk_draw_box instead of gtk_draw_shadow (sp_color_slider_realize): Attach style 2003-02-04 Lauris Kaplinski * src/sodipodi.c (sodipodi_load_config): Generic method by Bryce (sodipodi_load_preferences): Frontend, same (sodipodi_load_extensions): Ditto (sodipodi_get_repr): Test for "extensions" (sodipodi_init_config): Generic method by Bryce (sodipodi_init_preferences): Frontend by Bryce (sodipodi_init_extensions): Ditto * src/toolbox.c (sp_toolbox_extension_create): Implemented by Bryce * src/extension.c: New file by Bryce Harrington * src/extension.h: New file by Bryce Harrington * src/extensions-skeleton.h: Ditto * src/sp-mask.c: support maskContentUnits * src/nodepath.c (create_curve): Do not add 50 to y (why was it here?) * src/sp-item-group.c (sp_group_update): Propagate only if update flag set * src/sp-item.c (sp_item_set): Set clippath and mask bbox (sp_item_update): Ditto * src/sp-clippath.c (sp_clippath_build): Implement (sp_clippath_set): Ditto, clipPathUnits attribute (sp_clippath_update): Ditto (sp_clippath_show): Use bbox if needed (sp_clippath_set_bbox): New method 2003-02-03 Lauris Kaplinski * src/sp-item.c (sp_item_release): Release mask (sp_item_mask_release): New handler (sp_item_mask_modified): Ditto (sp_item_set): Parse mask (sp_item_show): Show mask (sp_item_private_hide): Hide mask * src/display/nr-arena-item.c (nr_arena_item_invoke_render): Do masking (nr_arena_item_private_dispose): Release mask (nr_arena_item_invoke_update): Update mask (nr_arena_item_set_mask): New method * src/sp-root.c (sp_root_build): Do not check for xmlns:sodipodi to determine version, as this is set automatically in xml loader * src/slideshow.h: New file * src/slideshow.c: New file 2003-02-02 Lauris Kaplinski * src/sp-rect.c (sp_rect_set): Accept 0.0 as valid for x, y, width and height (sp_rect_write): Use 0.0 as default for rx, ry * src/rect-context.c (sp_rect_finish): Use ::write to be sure * src/display/nr-arena-shape.c (nr_arena_shape_clip): OR masks * src/sp-defs.c (sp_defs_update): Implement (sp_defs_modified): Ditto * src/sp-clippath.c (sp_clippath_update): Implement (sp_clippath_modified): Ditto (sp_clippath_show): Fix (sp_clippath_hide): Implement * src/sp-item.c (sp_item_set): Fix clippath (sp_item_show): Ditto (sp_item_private_hide): Ditto (sp_item_display_key_new): New method * src/sp-item.h: Use new signature for ::show and ::hide 2003-02-01 Daniel Yacob * configure.in: Added "am" (Amharic) to ALL_LINGUAS. 2003-02-01 Lauris Kaplinski * src/sp-use.c (sp_use_init): Set width and height default to 100% (sp_use_set): Ditto (sp_use_bbox): use child transform (sp_use_update): Calculate relative lengths, set new viewport * src/sp-object.c: Removed ::dispose and some commented out code * src/sp-symbol.c: New file * src/sp-symbol.h: New file * src/enums.h: New file * src/xml/repr-io.c (sp_repr_svg_read_node): Return if entity declaration * src/sp-root.c (sp_root_init): Set correct default viewport values (sp_root_build): Read 'x', 'y', 'version', 'preserveAspectRatio' (sp_root_set): Parse added attributes, accept percentages for x, y, width, height (sp_root_update): Set up proper transformations to support aspect ratios * src/sp-item.h: Added viewPort and item2viewPort transformation to item context * src/document.c (sp_document_ensure_up_to_date): Set initial viewport and identity transforms in item context (sp_document_idle_handler): Ditto * src/attributes.h: Added 'version' and 'preserveAspectRatio' 2003-01-31 Masatake YAMATO * src/main.c (POPT_TABLEEND): Define if it is not defined in popt.h. copied from forntline. 2003-01-30 Lauris Kaplinski * src/helper/guideline.c (sp_guideline_render): Do not round int * src/interface.c (sp_ui_close_view): Get widget pointer before killing object 2003-01-28 Lauris Kaplinski * configure.in: Version 0.30pre * src/sp-image.c (sp_image_bbox): Calculate bbox properly 2003-01-28 gettextize * Makefile.am (SUBDIRS): Add intl, m4. (EXTRA_DIST): Add config.rpath. * configure.in (AC_OUTPUT): Add intl/Makefile, po/Makefile.in, m4/Makefile. 2003-01-28 Lauris Kaplinski * src/libnrtype/codepages.h: Win9x codepage declarations * src/main.c (WinMain): Use new toplevel toolbox constructor * src/text-context.c (sp_text_context_root_handler): Added Gdk_U to unimode * src/libnrtype/nr-type-w32.c: Implement ANSI charset and styles * src/libnrtype/nr-type-directory.c (nr_type_directory_build): Honour stretch attribute in searches * src/toolbox.c (sp_maintoolbox_create_toplevel): Broke constructor into two parts to allow multiple toolboxes * src/interface.c (sp_ui_view_show_toolbox): New method (sp_ui_view_dock_toolbox): Ditto (sp_ui_view_remove_toolbox): Ditto (sp_ui_view_menu): Added menu items for creating toolboxes (sp_create_window): Pack toplevel hbox into window 2003-01-26 Lauris Kaplinski * src/helper/art-utils.c (sp_vpath_from_bpath_transform_closepath): Moved array expansion to the right place (thanks to Lynn Kerby) 2003-01-25 Lauris Kaplinski * src/dialogs/xml-tree.c (sp_xml_tree_dialog): Allow horizontal scrollbar so we do not expand window infinitely * src/sp-use.c (sp_use_update): Implemented by MenTaLguY (sp_use_modified): Ditto * src/libnr/nr-path.c (nr_curve_bbox): Implement fast and exact bbox (thanks to Nathan) (nr_curve_bbox_wind_distance): Use exact bbox 2003-01-25 Nathan Hurst * src/desktop-snap.c: Fixed vector snapping code, replaced horizontal and vertical snapping with generic vector versions 2003-01-21 Lauris Kaplinski * src/nodepath.c (create_curve): Use NR_MATRIX_DF_TRANSFORM_X (Thanks to MenTaLguY for finding these NRPointF/ArtPoint mismatches) 2003-01-20 Lauris Kaplinski * src/libnrtype/nr-type-gnome.c (nr_typeface_gnome_new): Ditto * src/print.c (sp_print_preview_document): Fix gnome-print support (sp_print_document): Ditto * src/libnrtype/nr-type-xft.c (nr_type_xft_init): Added ebug printout * src/widgets/button.c (sp_button_button_press): Do not grab mouse (sp_button_button_release): Ditto 2003-01-19 Lauris Kaplinski * src/desktop.c (sp_dtw_status_frame_size_request): Always request minimum size * configure.in: Define GETTEXT_PACKAGE properly (Thanks to Christian Rose) * src/libnrtype/nr-type-xft.c (nr_type_xft_init): Removed CORE, so Xft fontlist should now be read properly with Debian PPC and or fontconfig systems 2003-01-15 MenTaLguY * src/sp-object.c (sp_object_get_unique_id): don't include namespace prefix when generating ids 2003-01-15 MenTaLguY * src/widgets/sp-xmlview-tree.c (add_node): tree nodes associated with elements pretend they initially have a NULL id (element_attr_changed): display elements with a NULL id properly 2003-01-15 MenTaLguY * src/xml/repr-private.h: added SPXMLNs structure * src/xml/repr.h: added decls for sp_xml_ns_uri_prefix() and sp_xml_ns_prefix_uri() * src/xml/repr-io.c: improved handling of namespace prefixes (sp_repr_qualified_name): added hashtable to keep track of NS prefixes used (sp_repr_read_node): Ditto (sp_repr_do_read): Ditto + replaced if cascade with calls to sp_xml_ns_uri_prefix() (sp_repr_set_xmlns_attr): helper to set xmlns attributes * src/xml/repr-util.c: added namespaces list (sp_xml_ns_register_defaults): procedure to initialize namespace mapping list (sp_xml_ns_auto_prefix): helper routine to automatically select a "good" prefix for a given namespace URI (sp_xml_ns_uri_prefix): returns a prefix to use for a given namespace URI, registering a mapping automatically if necessary (sp_xml_ns_prefix_uri): returns the namespace URI registered for a given prefix 2003-01-13 MenTaLguY * src/desktop.c (sp_dtw_desktop_shutdown): rearranged close confirmation buttons according to the Gnome HIG 2003-01-18 Lauris Kaplinski * src/seltrans.c (sp_sel_trans_grab): Build array of selected item transformations (sp_sel_trans_transform): Use original transforms to avoid rounding errors (sp_sel_trans_ungrab): Release array * src/dialogs/transformation.c: Implemented scaling percentages 2003-01-17 Lauris Kaplinski * src/draw-context.c (spdc_set_startpoint): Snap startpoint (thanks to Nathan) (sp_pen_context_root_handler): Ditto * src/dialogs/transformation.c: Implement simple move dialog 2003-01-16 Lauris Kaplinski * src/helper/guideline.c (sp_guideline_new): Changed signature, fixes granular new guideline placement bug (sp_guideline_render): Use normal rounding, so guideline and object are aligned * src/sp-item.h: Changed the signature of ::snappoints, this forced me to use NRPoints near everywhere else too 2003-01-15 Lauris Kaplinski * src/draw-context.c (spdc_endpoint_snap): Make Ctrl to restrict directions to multitudes of 15 degrees (thanks to Nathan Hurst) 2003-01-13 Lauris Kaplinski * src/file.c (sp_file_open_dialog): Rearrange (sp_file_save_dialog): Ditto (sp_file_save_document): Ditto 2003-01-13 MenTaLguY * src/toolbox.c (sp_maintoolbox_create): turned off user resizing of toolbox so it autoresizes properly 2003-01-13 MenTaLguY * src/toolbox.c (sp_maintoolbox_create): turned off user resizing of toolbox so it autoresizes properly * src/print.c (sp_print_plain_bind): Move generic PS code here (sp_print_plain_release): Ditto (sp_print_plain_fill): Ditto (sp_print_plain_stroke): Ditto (sp_print_plain_image_R8G8B8A8_N): Ditto (sp_print_document): Implement very-very simple non-gnome print dialog 2003-01-12 Lauris Kaplinski * src/main.c: Made --without-popt working 2003-01-11 MenTaLguY * src/xml/repr-io.c: removed bogus ATTLIST from DOCTYPE (sp_repr_read_file): factored out duplicated code into sp_repr_do_read + added parameter for default namespace (sp_repr_read_mem): factored out duplicated code into sp_repr_do_read + added parameter for default namespace (sp_repr_do_read): merged duplicated code from sp_repr_read_* family (sp_repr_do_read): insert xmlns decls for common namespaces (sp_repr_qualified_name): basic namespace handling for SVG, XLink, and Sodipodi namespaces (sp_repr_read_node): added parameter for default namespace (sp_repr_read_node): removed dead code and broken re-addition of xmlns declarations (xlink?) (repr_quote_write): UTF8 is ASCII-compatible -- removed inaccurate comment * src/xml/repr.h: added SP_*_NS_URI macros * src/document.c (sp_document_new): SVG is default NS (sp_document_new_from_mem): SVG is default NS * src/file.c (file_import_ok): SVG is default NS * src/interface.c (sp_ui_import_one_file): SVG is default NS * src/sodipodi.c (sodipodi_init): no default NS (sodipodi_load_preferences): no default NS 2003-01-11 Lauris Kaplinski * configure.in: Check for xft * src/libnrtype/Makefile.am: Added xft_sources * src/libnrtype/nr-type-directory.c (nr_type_read_xft_list): Load xft typefaces * src/libnrtype/nr-type-xft.h: New file * src/libnrtype/nr-type-xft.c: New file 2003-01-10 MenTaLguY * src/dialogs/item-properties.c (sp_item_widget_new): made unimplemented controls insensitive 2003-01-04 MenTaLguY * src/text-context.c (sp_text_context_finalize): folded back into sp_text_context_finish (sp_text_context_root_handler): Gtk IM now gets first refusal of key press _and_ release events; toggling "unicode mode" now triggers an IM reset; "unicode mode" bypasses IM entirely 2003-01-04 Lauris Kaplinski * src/text-context.c (sp_text_context_root_handler): Moved IM back to beginning (thanks to MenTaLguY for pointing this out) * src/sp-object.c (sp_object_invoke_update): Merge styles only if parent changed * src/sp-text.c (sp_text_update): Implement * src/sp-text.c (sp_string_modified): Chain invocation so style gets updated * src/widgets/sp-xmlview-content.c: Port to GtkTextView * src/dialogs/xml-tree.c: Port to GtkTextView * src/text-context.c (sp_text_context_root_handler): Consume xdigits in unicode mode * configure.in: Removed GTK_ENABLE_BROKEN * src/dialogs/text-edit.c: Use GtkTextView/Buffer * src/xml/repr-util.c (sp_repr_transfer_ids): Helper by MenTaLguY (sp_repr_move): Ditto 2003-01-03 Lauris Kaplinski * src/dialogs/xml-tree.c: Updated (MenTaLguY) * src/dialogs/item-properties.c (sp_item_widget_new): Added slider (MenTaLguY) * src/text-context.c (sp_text_context_setup): Set up Gtk IM (thanks to MenTaLguY) (sp_text_context_setup_text): Move code here (MenTaLguY) (sp_text_context_root_handler): Process Gtk IM (MenTaLguY) (sptc_commit): Gtk IM signal handler (MenTaLguY) * src/sp-text.c (sp_text_insert): Replace < 32 and not whitespace with space * src/selection.c (SP_SELECTION_UPDATE_PRIORITY): Set Gtk - 11 * src/document.c (SP_DOCUMENT_UPDATE_PRIORITY): Set GTK - 12 2003-01-01 Lauris Kaplinski * src/widgets/button.c (sp_button_paint_arrow): Draw something 2002-12-29 Lauris Kaplinski * src/event-context.c (sp_event_context_private_root_handler): Pan with Shift+Button3 too (useful with windows and < 3 button mice) * src/toolbox.c (sp_toolbox_file_create): Mek print buttons insensitive * src/sp-text.c (sp_text_write_transform): Fixed it * src/main.c (sp_do_export_png): Initialize y0 * src/file.c (sp_export_png_file): Use pixelstore, export min 64 rows at once, fix miscalculated rowstride 2002-12-28 Lauris Kaplinski * src/libnrtype/nr-type-directory.c (nr_type_read_w32_list): Use windows native fonts, if applicable * src/libnrtype/nr-type-w32.h: New file * src/libnrtype/nr-type-w32.c: New file 2002-12-27 Lauris Kaplinski * src/print.c (sp_print_image_R8G8B8A8_N): Implement direct PS version 2002-12-26 Lauris Kaplinski * src/print.c (sp_print_bpath): Helper (sp_print_bind): Implement non-gnome-print version (sp_print_release): Ditto (sp_print_fill): Ditto (sp_print_stroke): Implement non-gnome-print version * src/widgets/icon.c (sp_icon_image_load): Generic image loader * src/desktop.c (sp_desktop_widget_update_zoom): Make working again * src/widgets/button.c: New file * src/widgets/button.h: New file * src/toolbox.c (sp_toolbox_draw_create): Port to brand new SPButton 2002-12-17 Lauris Kaplinski * src/desktop.c (sp_desktop_widget_init): Some cleanup * src/widgets/ruler.c: Moved to widgets subdir * src/widgets/ruler.h: Moved to widgets subdir 2002-12-16 Lauris Kaplinski * configure.in: --with[out]-gnome-print argument, thanks to MentaLguY 2002-12-15 Lauris Kaplinski * src/sp-guide.c (sp_guide_set): Fixed horiz/vert * src/desktop-events.c (sp_dt_ruler_event): Fixed (sp_dt_guide_event): Fixed * src/helper/guideline.h: Renamed to avoid conflict with SPGuide object, several signature changes * src/helper/guideline.c: Ditto, removed properties * src/helper/sp-canvas.c (sp_canvas_window_to_world): Oops, was meant to be y0 (sp_canvas_world_to_window): Ditto 2002-12-14 Lauris Kaplinski * src/dialogs/desktop-properties.c: Fully functional color picker * src/display/nr-arena-item.h: Ported rendering from NRBuffer to NRPixBlock, involves changes in most Arena objects. Added NO_CACHE flag to rendering. 2002-12-13 Lauris Kaplinski * src/widgets/paint-selector.c (sp_paint_selector_style_button_add): Changed SODIPODI_GLADEDIR -> SODIPODI_PIXAMPDIR (Thanks to Ted Gould) 2002-12-11 Lauris Kaplinski * src/sp-guide.c (sp_guide_class_init): Removed translatability of properties * src/knot.c (sp_knot_class_init): Removed translatability of properties * src/helper/sp-guide.c (sp_guideline_class_init): Removed translatability from properties (who needs this?) * src/widgets/icon.h: New file, use as frontend to image loading * src/widgets/icon.c: New file * src/document.c (sp_document_create): Generic method, implement constructors as frontends * src/sodipodi.c (sodipodi_dispose): Only unref documents and let them manage list * glade/icons.svg: New icon definition file 2002-12-08 Lauris Kaplinski * src/dialogs/align.c (sp_align_arrange_clicked): Collected all arrangement methods into generic one (create_base_menu): Compact (sp_align_add_menuitem): New helper (sp_quick_align_dialog): Use value matrix instead of different callbacks 2002-12-07 Lauris Kaplinski * src/helper/sp-canvas.c (sp_canvas_expose): Free rects * src/attributes.h: Added animation-specific attributes * src/sp-animation.c: New file, only skeleton at moment * src/sp-animation.h: New file 2002-12-06 Masatake YAMATO * tools-version.sh: print the path to the tools. 2002-12-06 Lauris Kaplinski * src/sp-root.c (sp_root_update): Implement * src/sp-rect.c (sp_rect_update): Implement (sp_rect_set): Request update instead of setting shape immediately * src/sp-item-group.c (sp_group_update): Implement * src/sp-object.h: Replaced ::read_attr with ::set, signature change. This involves modification in all subclasses as well. * src/attributes.h: New file. We enumerate/define all allowed attributes and properties, to save few string compares later. * src/attributes.c: New file 2002-12-04 Lauris Kaplinski * src/sp-object.c (sp_object_request_update): New method. We implement separate ::update cascade that precedes ::modified, and is meant to be used for building item states (styles, paths and so on). In many aspects it shares code path with ::modified. (sp_object_invoke_update): Ditto Wed Dec 4 01:05:05 2002 Mitsuru Oka * src/widget/sp-menu-button.c: Fixed to work well. * src/toolbox.c: enable draw buttons. Comment out signal_connect_after. 2002-12-03 Lauris Kaplinski * src/sp-item.h: Replaced libart transforms and bboxes with libnr ones - this involves changes almost every file there. * src/main.c: Added POPT_AUTOHELP 2002-12-03 Masatake YAMATO * tools-version.sh (TOOLS): Added automake-1.6 and aclocal-1.6. Suggested by MenTaLguY. (srcdir): remove version number from grep pattern. 2002-12-02 Lauris Kaplinski * src/helper/sp-canvas.h: Made scrolling offsets integers * src/helper/sp-canvas.c (scroll_to): Scroll instead of draw * tools-version.sh (ENVPATTERN): Added FLAGS 2002-12-02 Masatake YAMATO * distro, tools-version.sh: New files. distro comes from distro-0.8.1(http://distro.pipfield.ca/). distro and tools-version.sh should be included only in CVS version of sodipodi. * autogen.sh: Call tools-version.sh. 2002-12-02 Lauris Kaplinski * src/dialogs/desktop-properties.c: Partial color picker implementation 2002-12-01 Lauris Kaplinski * src/dialogs/text-edit.c: GtkObject/GObject cleanup * src/file.c: Ditto * TODO: Update with 0.29 tasks * src/sp-gradient.c: GtkObject/GObject cleanup * src/widgets/sp-widget.c: Ditto * src/widgets/gradient-selector.c: Ditto * src/widgets/gradient-vector.c: Ditto * src/widgets/gradient-position.c: Ditto * src/widgets/gradient-image.c: Ditto * src/dialogs/fill-style.c: Ditto 2002-11-30 Lauris Kaplinski * src/view.h: Derive directly from GObject 2002-11-30 Masatake YAMATO * configure.in (ENABLE_AUTOTRACE): Comment out autotrace/frontline checking till frontline becomes gtk+2 based. 2002-11-30 Lauris Kaplinski * src/selection.h: Inherit directly from GObject * src/event-context.h: Inherit directly from GObject * src/helper/sp-canvas.c (sp_canvas_item_dispose): Set xform to NULL * src/display/canvas-arena.c (sp_canvas_arena_destroy): Fixed typo, so multiple destroys are allowed * src/nodepath.c: Removed external cursor pointers * src/knot.c (sp_knot_set_property): Ref new cursors * src/document.c (sp_document_get_type): Inherit directly from GObject 2002-11-29 Lauris Kaplinski * src/knot.c (sp_knot_handler): Signature change, return correct value as it should * src/helper/sp-canvas.c (scroll_to): Blit window, unless explicitly forbidden (sp_canvas_size_allocate): Update onlu changed areas * src/sp-item.c (sp_item_invoke_bbox): Signature change * src/desktop.c (sp_desktop_widget_update_rulers): Reenabled it (sp_desktop_set_display_area): Only update canvas root if zoom factor changes (sp_desktop_update_scrollbars): Working * src/helper/sp-canvas.c (paint): use full visible are for clipping, fixed type on specifying area dimensionf in event (sp_canvas_get_viewbox): New method * src/desktop.c (sp_desktop_set_display_area): New method, replaces show_region (sp_desktop_get_display_area): Replacement for ... (sp_desktop_zoom_absolute): Use generic sp_desktop_set_visible_area (sp_desktop_zoom_relative): Ditto 2002-11-28 Lauris Kaplinski * configure.in: ... and everyting else - merged SODIPODI_GTK2_BRANCH * po/Makevars: Added this 2002-11-28 gettextize * Makefile.am (SUBDIRS): Add intl, m4. (EXTRA_DIST): Add config.rpath. * configure.in (AC_OUTPUT): Add intl/Makefile, po/Makefile.in, m4/Makefile. 2002-11-27 gettextize * Makefile.am (SUBDIRS): New variable. (ACLOCAL_AMFLAGS): New variable. (EXTRA_DIST): New variable. * configure.in (AC_OUTPUT): Add intl/Makefile, po/Makefile.in, m4/Makefile. 2002-11-25 Lauris Kaplinski * configure.in: Version 0.29pre 2002-11-25 Lauris Kaplinski * src/display/nr-arena-glyphs.c (nr_arena_glyphs_group_add_component): Skip if zero-sized valid path * src/libnr/nr-path.c (nr_path_matrix_f_bbox_f_union): Allow NULL path member (nr_path_matrix_f_point_f_bbox_wind_distance): Ditto (nr_path_duplicate_transform): Ditto * src/libnrtype/nr-typeface.h: Added family member to definition * src/libnrtype/nr-type-directory.c (nr_type_register): Use family from def * src/libnrtype/nr-type-ft2.c (nr_type_ft2_build_def): Set family member * src/libnrtype/nr-type-gnome.c (nr_type_gnome_build_def): Set family member 2002-11-23 Lauris Kaplinski * src/dyna-draw-context.c: Clamp drag to [0.0 1.0] 2002-11-23 Masatake YAMATO * src/node-context.c: Inlucde document.h. (sp_node_context_stamp): New function. (sp_node_context_root_handler): Do stamp if space key is pressed during dragging. * src/nodepath.c (stamp_repr): New function. (node_event): Do stamp if the space key is pressed. (node_ctrl_event): New function. (sp_nodepath_node_new): Connected node_ctrl_event to n->p.knot::event. Connected node_ctrl_event to n->n.knot::event. * src/helper/bezier-utils.c (sp_bezier_fit_cubic_full): Fix memry leaks(u, uPrime). This leaks are reported by Michel Schinz . 2002-11-22 Lauris Kaplinski * src/libnrtype/nr-type-gnome.c (nr_typeface_gnome_lookup): Added all glyphs to 0xe000 private plane as well. * src/widgets/gradient-selector.c (sp_gradient_selector_set_spread): Set position widget spread as well (sp_gradient_selector_spread_activate): Ditto 2002-11-21 Lauris Kaplinski * src/helper/curve.c (sp_curve_closepath): Reinitialize pointers, as we may have reallocated path in helper * src/knotholder.h: Added hook for knot ungrabbing * src/knotholder.c (knot_ungrabbed_handler): Implement (sp_knot_holder_destroy): Free list items * src/sp-ellipse.c (sp_arc_start_set): Use genericellipse closed marker (sp_arc_end_set): Ditto (sp_arc_set_elliptical_path_attribute): Ditto * autogen.sh: Added '--intl' to gettextize flags, seems to be safe for older gettexts as well * src/dialogs/xml-tree.c (on_tree_select_row): Remove extra blockade counting (thanks to MenTaLguY) (on_tree_unselect_row): Ditto 2002-11-20 Masatake YAMATO * src/seltrans.c (sp_sel_trans_init): Set null to stamp_cache. (sp_sel_trans_ungrab): Clear stamp_cache. (sp_sel_trans_stamp): If available, use stamp_cache. Else build stamp_cache. l0 is removed. Don't free the list here. * src/seltrans.h: Included glib.h. (struct _SPSelTrans): added new field stamp_cache. 2002-11-20 Lauris Kaplinski * src/interface.c (sp_ui_dialog_menu): Do not bring up > 1 transform dialogs at once * src/seltrans.c (sp_sel_trans_stamp): Reversing still was not correct, replaced it with explicit sort 2002-11-20 Masatake YAMATO * src/seltrans.c (sp_sel_trans_stamp): The order of selections is reversed before stamping. The bug was reported by Michel Schinz . 2002-11-19 Lauris Kaplinski * src/desktop.c (sp_desktop_prepare_shutdown): New method, allowing us nice cleanup before ::destroy is invoked (sp_dtw_desktop_shutdown): Prepare desktop for shutdown * src/sp-text.c (sp_text_is_empty): Treat unicode private plane as graphical * src/libnrtype/nr-type-ft2.c (nr_typeface_ft2_lookup): Use private plane direct index, if no unimap (nr_typeface_ft2_new): Set unimap flag according to whether we have unicode mapping table or not 2002-11-18 Lauris Kaplinski * configure.in (FREETYPE_LIBS): Added direct freetype check * src/widgets/dash-selector.c (sp_dash_selector_menu_item_new): Use created GC, as widget is not mapped yet (sp_dash_selector_new): Load stroke definitions from preferences 2002-11-17 Lauris Kaplinski * src/helper/sodipodi-ctrl.c (sp_ctrl_build_cache): Cleaned up bitmap build 2002-11-17 Masatake YAMATO * src/dialogs/xml-tree.c (sp_xml_tree_dialog): Added small space between attribute name text field and set attribute button. 2002-11-17 Lauris Kaplinski * src/dialogs/xml-tree.c (sp_xml_tree_dialog): Cleanup by MenTaLguY * src/widgets/sp-xmlview-attr-list.c (event_attr_changed): Clamping string width to 64[+3], thanks to MenTaLguY 2002-11-16 Lauris Kaplinski * src/helper/sp-canvas.c (sp_canvas_motion): Get pointer if motion hints are requested * src/select-context.c (sp_select_context_item_handler): Use motion hints * src/dialogs/text-edit.c (sp_text_edit_dialog_read_selection): Kill annoying warning about position > length * src/style.h (SP_SCALE24_FROM_FLOAT): Use temporary (double) cast (SP_SCALE24_TO_FLOAT): Ditto * src/dialogs/xml-tree.c (cmd_set_attr): Use gal unicode wrappers * src/widgets/sp-xmlview-attr-list.c (event_attr_changed): Use gal unicode wrappers * src/widgets/sp-xmlview-content.c (event_content_changed): Use gal unicode wrappers (sp_xmlview_content_changed): Ditto * src/widgets/sp-xmlview-tree.c (element_attr_changed): Use gal unicode wrapper (text_content_changed): Ditto * src/dialogs/xml-tree.c: Sorted out includes a bit (set_tree_desktop): Comment aout transient, as some WMs do not do it proper (on_desktop_selection_changed): Set/release block (on_tree_unselect_row): Ditto (on_tree_select_row): Ditto (get_dt_select): Use selection helper methods 2002-11-15 Lauris Kaplinski * src/libnrtype/nr-type-gnome.c (nr_typeface_gnome_glyph_outline_get): Use metrics properly * src/libnrtype/nr-type-ft2.c (nr_typeface_ft2_ensure_slot_v): Implement for font missing vertical metrics (nr_typeface_ft2_ensure_outline): Ditto * src/libnrtype/nr-type-directory.c (nr_type_read_private_list): Read face number from proper place * src/libnrtype/nr-font.c (nr_font_generic_glyph_area_get): Implement * src/sp-text.c (sp_string_calculate_dimensions): Use metrics properly (sp_string_set_shape): Ditto * src/print.c (sp_print_stroke): Print dash 2002-11-14 Lauris Kaplinski * src/file.c (sp_file_exit): Close all views before exiting * src/interface.c (sp_ui_close_view): Destroy viewwidget properly (sp_ui_close_all): New method * src/sp-rect.c (sp_rect_write_transform): Adjust dash in addition to stroke width * src/display/nr-arena-shape.c (nr_arena_shape_update): Only dash if total dash length is >= 1.0 pixels * src/dialogs/stroke-style.c (sp_stroke_style_line_update_repr): Divide dash values by line width (sp_stroke_style_scale_line): Multiply dash values by line width (sp_stroke_style_line_update): Ditto * src/widgets/dash-selector.c (sp_dash_selector_set_dash): Use 1/1000 of total dash distance as delta * src/sp-gradient.c (sp_gradient_write): Set xlink:href attribute (sp_stop_write): Do it the right way 2002-11-13 Lauris Kaplinski * src/style.c (sp_style_read_dash): Allow comma separators (sp_style_read): Read dash presentation attributes * src/widgets/dash-selector.c: New file * src/widgets/dash-selector.h: New file * src/dialogs/stroke-style.c (sp_stroke_style_line_widget_new): Added dash pattern selector (sp_stroke_style_line_update): Update dash (sp_stroke_style_line_update_repr): Ditto (sp_stroke_style_line_dash_changed): Callback 2002-11-12 Lauris Kaplinski * src/dialogs/xml-tree.c: Naviagtion buttons, better layout and other improvements by MenTaLguY 2002-11-12 Masatake YAMATO * configure.in: required frontline-0.5.4. You can get both autotrace and frontline from http://sourceforge.net/autotrace. (AC_PROG_AS): wrapped by ifdef. Missing to add ChangeLog before commiting. 2002-11-11 Lauris Kaplinski * src/libnr/nr-gradient.c (nr_rgradient_render_generic_symmetric): Fix array read overflow (nr_rgradient_render_generic_optimized): Ditto * src/widgets/paint-selector.c (sp_paint_selector_write_lineargradient): Normalize gradient transform and recalculate positions before applying (sp_paint_selector_write_radialgradient): Ditto * src/widgets/gradient-selector.c (sp_gradient_selector_set_mode): New method (sp_gradient_selector_init): Added units and spread optionmenu * src/widgets/gradient-position.c (sp_gradient_position_motion_notify): Comment out nonuniform placement, as it did not work correctly * src/libnr/nr-matrix.c (nr_matrix_d_invert): Fix really silly bug generating identities (nr_matrix_f_invert): Ditto * src/dialogs/stroke-style.c (sp_stroke_style_paint_update): Set gradient props * src/dialogs/fill-style.c (sp_fill_style_widget_update): Set gradient props * src/sp-gradient.h: Changed units enumeration, so 0 is default * src/display/nr-arena-shape.c (nr_arena_shape_pick): Re-enable SVP based check, only do winding check, if object is filled * src/file.c: Removed printing code, only frontends remain * src/print.c (sp_print_document): Implement (sp_print_document_to_file): Ditto * src/sp-gradient.c (sp_gradient_ensure_colors): Fixed writing last color outside of allocated color vector 2002-11-10 Lauris Kaplinski * configure.in: Commented out AM_PROG_AS, as there is not such macro in my installation * src/libnrtype/nr-typeface.h: Signature change for outline unref * src/libnrtype/nr-type-gnome.c (nr_typeface_gnome_glyph_outline_get): Implemented vertical metrics outline (nr_typeface_gnome_glyph_advance_get): Ditto for advance * src/libnrtype/nr-type-directory.c: Cleaned up a lot, now we can hopefully work with multiple font sources * src/libnrtype/nr-type-directory.h: Moved namelist to nr-type-primitives * src/libnrtype/nr-type-primitives.c: New file * src/libnrtype/nr-type-primitives.h: New file * src/libnrtype/nr-type-ft2.c: New file * src/libnrtype/nr-type-ft2.h: New file 2002-11-09 Masatake YAMATO * configure.in (AM_CONDITIONAL(USING_OAF)): moved to toplevel. (AM_PROG_AS): used to check gas/as. * src/toolbox.c (sp_update_draw_toolbox): tooltips are added to the buttons. (gtk_event_box_new_with_image_file_and_tooltips) (gtk_event_box_force_draw_parent): New functions. * src/widgets/sp-menu-button.c (sp_menu_button_draw_arrow): New function. (sp_menu_button_draw): used sp_menu_button_draw_arrow. (sp_menu_button_expose): ditto. 2002-11-06 Masatake YAMATO * src/helper/curve.c (sp_curve_new_from_bpath): Initialize substart field. (sp_curve_reverse): assert if bs->code is ART_MOVETO_OPEN or ART_MOVETO. Added functions that converts multiple items to curves. * src/path-chemistry.c (sp_selected_item_to_curved_repr): Use sp_selected_item_to_curved_repr0. (sp_selected_path_to_curves0): New function. (sp_selected_path_to_curves): New function. (SP_TOCURVE_*): Placeholders. 2002-11-05 Lauris Kaplinski * src/dialogs/export.c: Made glade-free dialog * src/file.c (sp_export_png_file): Make filename const * configure.in (CFLAGS): Added GCC warnings 2002-11-03 Lauris Kaplinski * src/dialogs/node-edit.c: Removed unused glade stuff 2002-11-04 Masatake YAMATO * src/dialogs/xml-tree.c (sp_xml_tree_dialog): Added vpaned between sp_xmlview_attr_list_new and text fields. 2002-11-03 Lauris Kaplinski * Makefile.am (SUBDIRS): Removed macros * autogen.sh: Made self-contained * configure.in: Removed macros * src/widgets/sp-xmlview-tree.c: new file by MenTaLguY * src/widgets/sp-xmlview-content.c: new file by MenTaLguY * src/widgets/sp-xmlview-attr-list.c: new file by MenTaLguY * src/libnrtype/nr-type-directory.c: Parsing works for normal fonts 2002-11-02 Masatake YAMATO * README: removed GYVE. * doc/keybindings.txt: added a item for stamping. * doc/architecture.txt: Fix a typo in a document. / is forgotten in a sample svg. * src/rect-context.c (sp_rect_context_config_widget): Fix a typo in a label. 2002-11-01 Lauris Kaplinski * src/desktop.h: s/GtkEventBoxClass/SPViewClass/; thanks to MenTaLguY * configure.in (have_gnome_print): Gnome-print support can be disabled * src/libnrtype/Makefile.am (INCLUDES): SODIPODI_GNOME_PRINT_CFLAGS * src/Makefile.am (sodipodi_LDADD): Added SODIPODI_GNOME_PRINT_LIBS (INCLUDES): Same for CFLAGS 2002-10-31 Lauris Kaplinski * src/widgets/font-selector.c (struct _SPFontSelector): Use NRNameListss (sp_font_selector_init): Setup family namelist (sp_font_selector_family_select_row): Setup style namelist (sp_font_selector_set_font): Use namelist * src/libnrtype/nr-type-directory.c (nr_type_directory_lookup): New method (nr_type_directory_style_list_get): Return list of full names * src/libnrtype/nr-typeface.h: Added full name, removed generic style query 2002-10-31 Masatake YAMATO * src/sp-image.c (autotrace_dialog): invokeed frontline_init if it is defined. in-cvs version of frontline defines frontline_init. 2002-10-27 Lauris Kaplinski * src/helper/curve.c (sp_bpath_clean): Fixed warning (thanks to MenTaLguY) 2002-10-26 Lauris Kaplinski * src/dialogs/text-edit.c (sp_text_edit_dialog_update_object): Make style srings lowercase before applying * src/dialogs/desktop-properties.c (sp_desktop_dialog_new): Added togglebutton for showing/hiding page border * src/desktop.c (sp_dt_namedview_modified): Show/hide page border * src/sp-namedview.c (sp_namedview_read_attr): Listen to "showborder" 2002-10-25 Lauris Kaplinski * src/dialogs/item-properties.c: Removed libglade dependency 2002-10-23 Lauris Kaplinski * configure.in: Added check for popt.h * src/dialogs/align.c: Removed libglade dependency * src/toolbox.c: Removed libglade dependency 2002-10-22 Lauris Kaplinski * src/toolbox.c (sp_toolbox_button_new): Helper (sp_toolbox_toggle_button_new): Ditto (sp_toolbox_file_create): Degladeified method * src/file.c (sp_file_export_dialog): Frontend * src/toolbox.c (sp_toolbox_toggle_button_new): Helper (sp_toolbox_draw_create): Use previous * src/main.c: #include Mon Oct 21 13:31:41 2002 Mitsuru Oka * configure.in: Fixed dependency bug. Removed --with/without-gnome-xml2 config option. 2002-10-21 Lauris Kaplinski * src/widgets/sp-toolbox.c: Removed whole gtk.h inclusion * src/toolbox.c: Added missing headers * src/print.c (sp_print_image_R8G8B8A8_N): Implement (sp_print_preview): Remove root transform (sp_print_fill): Do not apply ctm twice Mon Oct 21 02:11:08 2002 Mitsuru Oka * autogen.sh: Fixed package version in echo message. * configure.in: Rewrite using PKG_CHECK_MODULES. It reduced verbose package checks. * src/main.c: Removed unused GNOME headers. * src/sp-ellipse.c: Ditto. * src/sp-image.c: Ditto. * src/toolbox.c: Ditto. * src/dialogs/align.c: Ditto. * src/dialogs/desktop-properties.c: Ditto. * src/dialogs/display-settings.c: Ditto. * src/dialogs/document-properties.c: Ditto. * src/dialogs/object-attributes.c: Ditto. * src/dialogs/object-properties.c: Ditto. * src/dialogs/stroke-style.c: Ditto. * src/dialogs/text-edit.c: Ditto. * src/dialogs/tool-attributes.c: Ditto. * src/dialogs/tool-options.c: Ditto. * src/helper/units.c: Ditto. * src/widgets/font-selector.c: Ditto. * src/widgets/gradient-selector.c: Ditto. * src/widgets/paint-selector.c: Ditto. * src/widgets/sp-color-selector.c: Ditto. * src/selection.c: Renamed release handler. * src/sp-gradient.c: Fixed non existence destroy signal bug. * src/sp-item.c: Ditto. * src/style.c: Ditto. * src/widgets/gradient-image.c: Ditto. * src/widgets/gradient-vector.c: Ditto. * src/sp-object.c: Cleanup. Sun Oct 20 12:22:03 2002 Mitsuru Oka * autogen.sh: Specify automake version to 1.6.1. * configure.in: Cleanup. * src/desktop-events.c: Cleanup and removed unused gnome header. * src/desktop.c: Ditto. * src/draw-context.c: Ditto. * src/dyna-draw-context.c: Ditto. * src/event-context.c: Ditto. * src/rect-context.c: Ditto. * src/spiral-context.c: Ditto. * src/star-context.c: Ditto. * src/file.c: Ditto. * src/help.c: Ditto. * src/main.c: Ditto. * src/sp-anchor.c: Ditto. * src/sp-item-group.c: Ditto. * src/sp-item.c: Ditto. * src/sp-rect.c: Ditto. * src/sp-shape.c: Ditto. * src/sp-spiral.c: Ditto. * src/sp-star.c: Ditto. * src/interface.c: Ditto. We lost icon for sp_about function. * src/sp-image.c: Cleanup and removed unused gnome header. Replaced by GtkDialog. * src/document.c: Ditto. * src/sodipodi.c: Ditto. * src/sp-namedview.c: Fixed bug that SPGuide was unrefed by gtk_object_unref. * src/sp-object.c: Fixed up release/disopse/finalize policy. We now got works again. (sp_object_class_init): Fixed object signal handler connection bug at release signal creation. * src/sp-pattern.c: Moved to g_object_unref. * src/sp-root.c (sp_root_release): Check if namedviews is NULL. * src/sp-text.c: Moved to g_object_unref. Removed unused gnome dependency. * src/svg-view.c: Moved to g_object_unref and g_object_get/set_data. * src/toolbox.c: Reverted from SPWrap to GtkTable. It's not a time to use SPWrap. * src/dialogs/export.c: Moved arena object to GObject functions. * src/dialogs/item-properties.c: Moved to g_object_unref. * src/dialogs/xml-tree.c: Cleanup. * src/display/nr-arena-glyphs.c: Moved from finalize to dispose. * src/display/nr-arena-group.c: Ditto. * src/display/nr-arena-image.c: Ditto. * src/display/nr-arena-item.c: Ditto. * src/display/nr-arena-shape.c: Ditto. * src/display/nr-arena.c: Ditto. * src/xml/sp-color-selector.c (sp_color_selector_init): Added GINT_TO_POINTER cast. 2002-10-20 Lauris Kaplinski * src/libnr/nr-compose-transform.c (nr_R8G8B8A8_P_R8G8B8A8_P_R8G8B8A8_N_TRANSFORM): Use mmx subcomposers if needed * src/libnr/nr_mmx_R8G8B8A8_P_R8G8B8A8_P_R8G8B8A8_N_TRANSFORM.S: New file 2002-10-19 Lauris Kaplinski * src/libnr/nr-compose-transform.c (nr_R8G8B8A8_P_R8G8B8A8_P_R8G8B8A8_N_TRANSFORM_0): Split composer (nr_R8G8B8A8_P_R8G8B8A8_P_R8G8B8A8_N_TRANSFORM_n): Ditto 2002-10-18 Lauris Kaplinski * src/libnr/nr_mmx_R8G8B8A8_P_EMPTY_A8_RGBAP.S: new file * src/libnr/nr-path.c (nr_path_matrix_f_bbox_f_union): Moved bpath bbox calculation here (nr_curve_bbox): Rearrange comparisons Thu Oct 17 15:25:43 2002 Mitsuru Oka * Removed macros directory. * Makefile.am, autogen.sh, configure.in: Corresponding changes. 2002-10-17 Lauris Kaplinski * src/helper/sp-canvas.c: Use idle priority lower than Gtk redraw * src/display/nr-arena-shape.c (nr_arena_shape_pick): Use libnr distance7wind calculation, if item is not at render state (nr_arena_shape_update): Only update bbox, if render state is not needed. This gave us approximately 10x faster dragging of comlex shapes * src/libnr/nr-path.c (nr_line_wind_distance): New helper method (nr_curve_bbox_wind_distance): Ditto (nr_path_matrix_f_point_f_bbox_wind_distance): Fast method to find bbox and/or wind and/or distance to bezier path 2002-10-16 Lauris Kaplinski * src/print.h: New file, frontend to printing * src/print.c: New file, frontend to printing 2002-10-15 Davide Puricelli * debian/*: Updated 2002-10-15 Lauris Kaplinski * src/sp-item.c (sp_item_invoke_print): Rename, signature change * src/sp-item.h: SPItem::print signature change * src/forward.h: Added SPPrintContext * src/libnr/testnr.c (main): Fill mask with blocks of transparent, opaque and random data. This should be closer to reality and (surprise!) gives better performance numbers too! * src/libnrtype/nr-typeface.c: Moved everyting to virtual method vector Sun Oct 13 20:54:15 2002 Mitsuru Oka * autogen.sh: Come from GNOME2. Sun Oct 13 20:27:04 2002 Mitsuru Oka * src/desktop-events.c, src/desktop.c, src/dialogs/object-properties.c: Moved gnome_pixmap_new_from_file to gtk_image_new_from_file. * src/draw-context.c: Replaced finalize with destory. * src/sp-polygon.c: Fixed property bug which did not work correctly. * src/widgets/sp-wrap-box.c, src/widgets/sp-wrap-box.h, src/widgets/sp-hwrap-box.c, src/widgets/sp-hwrap-box.h, src/widgets/sp-vwrap-box.c, src/widgets/sp-vwrap-box.h: New files. * src/widgets/test-wrapbox.c: New file. * src/widgets/Makefile.am: Added wrapbox stuffs. * src/widgets/.cvsignore: Added test-wrapbox. * src/widgets/sp-toolbox.c: Used g_signal_new instead of gtk_signal_new, because we need accumulater to control signal handler flow, and previous codes are not perfect. Sun Oct 13 04:18:41 2002 Mitsuru Oka * src/sodipodi.c, sodipodi.h: sodipodi_get_elapsed_time() was useless, so removed. * src/knot.c: Replaced finalize with dispose. use GDK_CURRENT_TIME instead of sodipodi_get_elapsed_time(). * src/select-context.c: Use GDK_CURRENT_TIME instead of sodipodi_get_elapsed_time(). * src/style.c: Replaced destroy with release. * src/text-context.c: Replaced finalize with destory, because it's not a direct subclass of GObject. Replaced noisy gtk_signal_disconnect_by_data with g_signal_handlers_disconnect_matched. * src/toolbox.c: Use normal gtk_menu_item_set_submenu instead of original gtk_menu_popup callback. * src/sp-object.c: Fixed illegal signal emission. * src/selection.c: * src/dialogs/fill-style.c: Added required headler files. * src/dialogs/item-properties.c: Depressed warning. * src/display/canvas-arena.c: Use GDK_CURRENT_TIME instead of sodipodi_get_elapsed_time(). * src/helper/sp-guide.c: Cleanup. * src/widgets/sp-menu-button.c: Use GDK_CURRENT_TIME instead of sodipodi_get_elapsed_time(). Changed popup style. 2002-10-13 Lauris Kaplinski * src/helper/sp-canvas.c (uta_clear): Experimental method (paint): Return, if events pending (commented out) (do_update): Return value (idle_handler): Use update return value * src/libnr/testnr.c: Speed test * src/libnr/nr_mmx_R8G8B8_R8G8B8_R8G8B8A8_P.S: New file * src/helper/sp-canvas-util.c (sp_canvas_clear_buffer): Be quick * src/helper/sp-canvas.h: Moved update flags back here * src/display/canvas-arena.c (sp_canvas_arena_update): Sort updates according to affine (again) * src/libnr/have_mmx.S: New file (copied from gdk-pixbuf) * configure.in (use_mmx_asm): Check for mmx * src/libnr/nr-compose.c (nr_R8G8B8A8_P_R8G8B8A8_P_A8_RGBA32): Use mmx if present * src/libnr/nr_mmx_R8G8B8A8_P_R8G8B8A8_P_A8_RGBAP.S: Assembler code 2002-10-11 Lauris Kaplinski * src/helper/sp-canvas.h: Changed object type to SPCanvas, cleanup * src/helper/sp-canvas.c: Ditto 2002-10-10 Lauris Kaplinski * src/helper/sp-canvas.c: Local version of praised GnomeCanvas * src/helper/sp-canvas.h: Local version of praised GnomeCanvas * src/libnr/nr-gradient.c (nr_rgradient_render_generic_symmetric): Optimize 2002-10-09 Lauris Kaplinski * src/libnr/nr-blit.c (nr_blit_pixblock_mask_rgba32): New method * src/libnr/nr-gradient.c (nr_rgradient_renderer_setup): Do r == 0 correctly (nr_rgradient_render_generic_optimized): Optimize (nr_rgradient_render_block_end): New method * configure.in: Version 0.28pre 2002-10-09 Lauris Kaplinski * configure.in: Version 0.27 * src/text-context.c (sp_text_context_root_handler): Only turn off unimode, if there really is string associated with key 2002-10-09 Masatake YAMATO * src/sp-image.c (load_splines): changed the order of arguments. this change is for frontline-0.5.3. * configure.in: required frontline-0.5.3. To build sodipodi with frontline you have to get: http://autotrace.sourceforge.net/snapshots/autotrace-0.30.8.tar.gz http://autotrace.sourceforge.net/frontline/frontline-0.5.3.tar.gz 2002-10-08 Lauris Kaplinski * src/widgets/gradient-position.c (sp_gradient_position_motion_notify): Do not mess with lineargradient skew * src/sp-ellipse.c (sp_arc_modified): Continue upstream Mon Oct 7 01:41:23 2002 Mitsuru Oka * Merged from HEAD branch. 2002-10-07 Lauris Kaplinski * src/sp-text.c: Moved frontends here * src/dialogs/node-edit.h: Moved declarations here * src/desktop.c (sp_desktop_widget_view_position_set): Use grid placement (sp_desktop_widget_namedview_modified): Read grid placement (sp_desktop_widget_update_rulers): Use grid placement (sp_desktop_set_coordinate_status): Disable, until sorted out * src/widgets/font-selector.c (sp_font_selector_set_font): Implement * src/libnrtype/nr-rasterfont.c (nr_rasterfont_ensure_glyph_slot): Oops, alloc and clear the right number of blocks * src/libnr/nr-compose.c (nr_R8G8B8_R8G8B8_A8_RGBA32): Implement (nr_R8G8B8_EMPTY_A8_RGBA32): Implement * src/libnr/nr-blit.c (nr_blit_pixblock_mask_rgba32): Implement * src/widgets/font-selector.c (sp_font_preview_expose): Implement (sp_font_preview_set_font): Ditto * src/libnr/nr-pixblock-pattern.h: New file * src/libnr/nr-pixblock-pattern.c: New file 2002-10-06 Lauris Kaplinski * src/toolbox.c (sp_toolbox_draw_create): Do not expand/fill use correct name for text * sodipodi.spec.in: Update to cleaner version by Dag Vieers * src/sp-text.c (sp_text_is_empty): New method (sp_string_release): Use ::release, not ::destroy (sp_tspan_release): Ditto (sp_text_release): Ditto * src/text-context.c (sp_text_context_selection_changed): Forget text (sp_text_context_forget_text): New method, remove empty text item * src/sp-text.c (sp_tspan_build): Ensure there is always text child * src/sp-item-group.c (sp_group_bbox): Do not set bbox to 0,0,0,0 * src/select-context.c (sp_select_context_root_handler): Set grabbed to NULL on release * src/path-chemistry.c (sp_selected_path_combine): Use item2root transform (sp_selected_path_break_apart): Ditto * src/sp-item.c (sp_item_i2root_affine): New method * src/widgets/gradient-position.c (sp_gradient_position_motion_notify): Reset gradient relative transform to symmetric rectilinear if dragging * src/style.c (sp_style_merge_ipaint): Use "release" signal (sp_style_read_ipaint): Ditto * src/sp-pattern.c (sp_pattern_read_attr): Use "release" signal * src/sp-item.c (sp_item_read_attr): Use "release" signal * src/sp-image.c (autotrace_dialog): Connect "release" instead of "destroy" * src/sp-gradient.c (sp_gradient_href_release): Use "release" instead of "destroy" 2002-10-06 suzuki toshiya * src/libnr/Makefile.am (libnr_a_SOURCES): added nr-gradient.h. (nr-gradient.c appeared twice.) 2002-10-04 Masatake YAMATO * src/widgets/font-selector.c: Inlucded stdlib.h for atof. 2002-10-05 Lauris Kaplinski * src/libnr/nr-gradient.c (nr_rgradient_renderer_setup): Use different base renderers (nr_rgradient_render_block_symmetric): Split frontend (nr_rgradient_render_block_optimized): Ditto (nr_rgradient_render_generic_optimized): Asymmetric renderer * src/sp-object.c (sp_object_invoke_release): new frontend (sp_object_detach): release object (sp_object_detach_unref): Ditto * src/sp-object.h: Added ::release virtual method * src/sp-object.c (sp_object_invoke_shutdown): New method 2002-10-04 Lauris Kaplinski * src/sp-item-group.c (sp_item_group_ungroup): Rewrite it, so it moves all non-items to main node, preserving logical order and building objects in correct sequence * src/desktop-affine.c: Methods for root coordinate system, fixes misplacement bug * src/libnrtype/nr-rasterfont.c: Made working * src/libnrtype/nr-font.c (nr_font_new_default): Do linking (nr_font_unref): Ditto * src/libnrtype/nr-type-directory.c (nr_typeface_unref): Moved here, implemented list * src/display/nr-arena-glyphs.c (nr_arena_glyphs_update): Port to rfont (nr_arena_glyphs_pick): Ditto (placeholder) (nr_arena_glyphs_set_path): Ditto (nr_arena_glyphs_fill_mask): Ditto * src/libnr/nr-matrix.h (NR_MATRIX_DF_EXPANSION): New macro (NR_MATRIX_DF_EXPANSION2): Ditto 2002-10-03 Lauris Kaplinski * src/sp-text.c (sp_text_set_shape): Make document insensitive temporarily * src/text-context.c (sp_text_context_root_handler): Allow entering unicode mode by Ctrl-u 2002-10-02 Lauris Kaplinski * src/sp-chars.c (sp_chars_add_element): Signature change (sp_chars_show): Ditto * src/display/nr-arena-glyphs.c (nr_arena_glyphs_group_add_component): Signature change * src/libnrtype/nr-rasterfont.c (nr_rasterfont_new): Set it up (nr_rasterfont_unref): Release glyph slots (nr_rasterfont_render_glyph_mask): Implement (nr_rasterfont_ensure_glyph_slot): New helper * src/sp-text.c: Port to new chars signature * src/sp-chars.h: Use font instead of typeface * src/libnr/nr-gradient.c (nr_lgradient_render_block): Signature change (nr_lgradient_renderer_setup): Use generic base class (nr_rgradient_renderer_setup): Ditto (nr_rgradient_render_block): Signature change * src/libnr/nr-render.h: New file 2002-10-01 Lauris Kaplinski * src/dialogs/text-edit.c (sp_text_edit_dialog_update_object): Use libnrtype (sp_text_edit_dialog_read_selection): Ditto (sp_text_edit_dialog_font_changed): Ditto * src/libnrtype/nr-type-directory.h: Implement NRNameList * src/libnrtype/nr-type-directory.c (nr_type_directory_lookup_fuzzy): Force lowercase (nr_type_directory_family_list_destructor): Implement (nr_type_directory_family_list_get): Ditto (nr_type_directory_style_list_destructor): Ditto (nr_type_directory_style_list_get): Ditto * src/widgets/font-selector.c: New file * src/widgets/font-selector.h: New file * src/libnrtype/nr-rasterfont.c: New file * src/libnrtype/nr-rasterfont.h: New file * src/libnr/nr-matrix.c (nr_matrix_f_set_scale): Correct signature * src/sp-text.c (sp_font_get_glyph_bbox): Use libnrtype (sp_font_get_glyph_advance): Ditto (sp_font_get_glyph_bbox_lr2tb): Ditto (sp_string_calculate_dimensions): Ditto (sp_string_set_shape): Ditto * src/sp-chars.c (sp_chars_destroy): Use libnrtype (sp_chars_bbox): Ditto (sp_chars_show): Ditto (sp_chars_clear): Ditto (sp_chars_add_element): Ditto (sp_chars_normalized_bpath): Ditto (sp_chars_do_print): Ditto * src/sp-chars.h (sp_chars_set_paintbox): Use libnrtype * src/libnrtype/nr-type-gnome.h: Placeholder * src/libnrtype/nr-type-directory.c: New file * src/libnrtype/nr-type-directory.h: New file * src/libnrtype/nr-font.c: New file * src/libnrtype/nr-font.h: New file * src/libnrtype/nr-typeface.c: New file * src/libnrtype/nr-typeface.h: New file * src/Makefile.am (SUBDIRS): Added libnrtype * src/libnr/nr-path.h: Placeholder 2002-09-30 Lauris Kaplinski * src/widgets/gradient-position.c (spgp_clip_line): New method (spgp_draw_rect): Ditto Sun Sep 29 14:17:31 2002 Mitsuru Oka * src/knot.c, knot.h: Moved SPKnot from subclass of GtkObject to GObject. * src/knotholder.c: Ditto * src/seltrans.c: Ditto * src/selection.c: Migrated dispose to destroy for remainder. * src/desktop-events.c: Fixed to connect signal handler correctly. * src/desktop.c: Fixed to add button correctly. * src/sp-use.c: Depressed gchar * warnings. * src/sp-guide.c: Indented. 2002-09-29 Lauris Kaplinski * src/sp-gradient.c (sp_gradient_set_gs2d_matrix_f): Oops, write the right transform * src/widgets/gradient-position.c: Use new sensible internals * src/widgets/gradient-position.h: Ported to ne internals * src/widgets/paint-selector.c (sp_paint_selector_set_mode_gradient): Removed separate linear/radial optionmenu * src/widgets/gradient-selector.c (sp_gradient_selector_set_gs2d_matrix_f): New method (sp_gradient_selector_get_gs2d_matrix_f): Ditto (sp_gradient_selector_set_rgradient_position): Implement (sp_gradient_selector_init): Pax buttons under vector * src/widgets/gradient-position.c: New positioning syntax, lots of radial stuff * src/libnr/nr-matrix.h (NR_MATRIX_DF_TRANSFORM_X): Convenience macro (NR_MATRIX_DF_TRANSFORM_Y): Ditto * src/dialogs/object-properties.c (sp_object_properties_dialog): Shorten string * src/dialogs/stroke-style.c (sp_stroke_style_paint_update): Use new gradient widgets syntax (sp_stroke_style_paint_dragged): Ditto (sp_stroke_style_paint_changed): Ditto * src/dialogs/fill-style.c (sp_fill_style_widget_update): Use new gradient widgets syntax for bbox, transform, position (sp_fill_style_widget_paint_dragged): Ditto, use helper (sp_fill_style_widget_paint_changed): Ditto * src/sp-gradient.c (sp_gradient_get_gs2d_matrix_f): New method (sp_gradient_set_gs2d_matrix_f): Ditto (sp_gradient_write): Implement (sp_lineargradient_write): Ditto (sp_radialgradient_write): Ditto * src/select-context.c (sp_select_context_root_handler): Process button release only if grabbed 2002-09-28 Lauris Kaplinski * src/widgets/gradient-vector.c (sp_gvs_rebuild_gui_full): Do not add id label * src/widgets/paint-selector.c (sp_paint_selector_init): Added radial button (sp_paint_selector_set_style_buttons): Set radial (sp_paint_selector_set_mode_gradient): Set correct button * glade/Makefile.am (pixmaps): Added fill_radial.xpm Sat Sep 28 14:35:21 2002 Mitsuru Oka * src/toolbox.c: Use gtk_window_set_resizable() instead of gtk_window_set_policy(), because it is deprecated in GTK+2. * src/file.c: Depressed warning on gnome_print_master_perview_new. * src/sp-object.h, sp-object.c: Added destroy signal and remove dispose signal. * src/selection.c, sp-gradient.c, style.c, src/widgets/gradient-vector.c: Moved dispose to destroy. * src/sp-guide.c: Added property. * src/helper/sp-guide.c: Added property. * src/sp-namedview.c: Moved gtk_object_unref to g_object_unref. * src/dialogs/text-edit.c: Removed some GNOME dependencies. * src/helper/gnome-utils.h gnome-utils.c: New file. Utilities to help to remove GNOME libraries. * src/interface.c: Moved some GNOME functions to gnome-utils.h. 2002-09-27 Lauris Kaplinski * src/widgets/paint-selector.c (sp_paint_selector_get_gradient_position_floatv): Set radial * src/libnr/nr-pixblock-pixel.c (nr_compose_pixblock_pixblock_pixel): Kill division by zero, if fg and bg are both fully transparent * src/dialogs/fill-style.c (sp_fill_style_widget_update): Implement radial (sp_fill_style_widget_paint_dragged): Ditto (sp_fill_style_widget_paint_changed): Ditto * src/sp-gradient.c (sp_radialgradient_set_position): New method * src/gradient-chemistry.c (sp_gradient_ensure_radial_private_normalized): New method (sp_gradient_get_radial_private_normalized): Ditto (sp_item_force_fill_radialgradient_vector): Ditto (sp_item_force_stroke_radialgradient_vector): Ditto 2002-09-27 Lauris Kaplinski * src/widgets/paint-selector.c (sp_paint_selector_set_gradient_radial): New method * src/widgets/gradient-position.c (sp_gradient_position_set_mode): New method (sp_gradient_position_update): Setup linear/radial renderer as needed * src/widgets/gradient-selector.c (sp_gradient_selector_set_mode): New method (sp_gradient_selector_set_lgradient_position): Renamed method (sp_gradient_selector_set_rgradient_position): Ditto (sp_gradient_selector_get_lgradient_position_floatv): Renamed method (sp_gradient_selector_get_rgradient_position_floatv): Ditto * src/libnr/nr-pixblock-pixel.c (nr_compose_pixblock_pixblock_pixel): Fixed R8G8B8 target to render channels separately * src/sp-gradient.c (sp_gradient_from_position_xy): Made gradient method, changed signature, added gradientTransform to list (sp_gradient_to_position_xy): Ditto * src/libnr/nr-pixblock-pixel.c: New file * src/libnr/nr-pixblock-pixel.h: New file * src/libnr/nr-gradient.c (nr_lgradient_renderer_setup): Use gradientspace (nr_lgradient_render_block): Use generic renderer, if no specific one (nr_lgradient_render_generic): Implement * src/sp-gradient.c (sp_gradient_render_vector_block_rgb): Compose correctly * src/libnr/nr-blit.c (nr_compose_pixblock_pixblock_pixel): Generic pixel composer 2002-09-26 Masatake YAMATO * src/select-context.c (sp_select_context_root_handler): used sp_canvas_item_grab where I want to receive key_press event. (sp_select_context_item_handler): Ditto. 2002-09-26 Lauris Kaplinski * src/libnr/nr-gradient.c: New file * src/libnr/nr-gradient.h: New file * src/sp-gradient.c (sp_lineargradient_painter_new): Construct libnr renderer (sp_lg_fill): Use it (sp_radialgradient_painter_new): Construct renderer (sp_rg_fill): Use it * src/sp-shape.c (sp_shape_print): Clear pixelstore * src/sp-chars.c (sp_chars_print_bpath): Clear pixelstore before each rendering * src/sp-gradient.c (sp_rg_fill): Oops, moved declaration before statements (sp_rg_fill): Ditto 2002-09-25 Lauris Kaplinski * src/libnr/nr-compose.c (nr_R8G8B8A8_N_EMPTY_R8G8B8A8_P): Oops, evil bug * src/libnr/nr-rect.c (nr_rect_d_matrix_d_transform): New method (nr_rect_f_matrix_f_transform): Ditto * src/sp-object-repr.c (sp_object_type_lookup): Added * src/sp-pattern.h: New file * src/sp-pattern.c: New file * src/Makefile.am (sodipodi_SOURCES): Added sp-pattern.[c,h] * src/sp-gradient.c (sp_rg_fill): Implement, seems correct although SLOW (sp_radialgradient_painter_new): Implement, except viewport percentages (sp_radialgradient_read_attr): Initialize right numbers (sp_radialgradient_init): Ditto Tue Sep 24 01:01:21 2002 Mitsuru Oka * src/interface.c (sp_ui_menu_append_item): Fixed to work well, even if label is exist and stock is not exist. * src/widgets/sp-menu-button.c (sp_menu_button_menu_position): Modified for popup menu calculation. * src/widgets/sp-toolbox.c: Added GTK_SIGNAL_FUNC cast. 2002-09-24 Masatake YAMATO * src/select-context.c (sp_select_context_root_handler, sp_select_context_item_handler): used GDK_space instead of GDK_BUTTON_2. Added Lauris's event mask code after grabbing an item. * src/seltrans.c (sp_sel_trans_handle_stamp): removed. (sp_seltrans_handle_event): handled "pressing space" as stamping. (gdk/gdkkeysyms.h): included. * src/knot.c (sp_knot_class_init): removed "stamped" signal again. (sp_knot_handler): didn't emit stamped anymore. 2002-09-24 Lauris Kaplinski * src/libnr/nr-matrix.c (nr_matrix_d_set_scale): new method (nr_matrix_f_set_scale): Ditto * src/sp-use.c (sp_use_href_changed): Use unref instead of destroy (sp_use_destroy): Ditto * src/seltrans.c (sp_sel_trans_scale): Allow scaling in one dimension, if it is > 0.0 (sp_sel_trans_scale_request): Snap in one dimension, if > 0.0 * src/sp-path.c (sp_path_bbox): Allow empty bboxen * src/helper/art-utils.c (sp_bpath_matrix_d_bbox_d_union): Union always, even if computed bbox is empty Mon Sep 23 01:37:09 2002 Mitsuru Oka * src/widgets/sp-menu-button.c: Clean up code. * src/widgets/sp-menu-button.c (sp_menu_button_menu_position): In GTK+2, button widget share its window among toplevel window, so I fixed offset calculation. * src/knot.c: Clean up unused marshaller. * src/knotholder.c: Ported. 2002-09-23 Lauris Kaplinski * src/helper/sp-canvas-util.c (sp_canvas_item_grab): new method to circumvent GnomeCanvas bug * src/knot.c (sp_knot_handler): Use sp_canvas_item_grab 2002-09-23 Masatake YAMATO * src/knot.c (sp_knot_class_init): Added "stamped" signal (sp_knot_handler): Emit it * src/select-context.c (sp_select_context_item_handler): Do stamping (sp_select_context_root_handler): Ditto * src/seltrans.c (sp_sel_trans_stamp): new method (sp_show_handles): Connect "stamped" signal (sp_sel_trans_handle_stamp): new handler 2002-09-23 Lauris Kaplinski * src/seltrans.c (sp_seltrans_handle_event): Just here for my debugging * src/knot.c (sp_knot_handler): No ungrabbing, added TOP CANVAS HACK, so we can now get key events and do not kill Gdk * configure.in: Version 0.27pre Sun Sep 22 22:06:57 2002 Mitsuru Oka * src/desktop.c: add destroy call for GtkDialog. * src/sp-object.c, sp-polyline.c, style.c, src/display/canvas-area.c, src/widgets/gradient-image.c, gradient-vector.c: Ported and fixed. * src/sp-ruler.c: Bug fixed that misspelling s/GtkHRuler/SPHRuler/ and s/GtkVRuler/SPVRuler/. * src/widgets/sp-menu-button.c, sp-menu-button.h, src/toolbox.c: Found duplicated signal "activate". So, renamed SPMenuButton::activate to "activate-item" and did corresponding change for toolbox.c. * src/helper/sp-ctrlline.c: Avoid to duplicated free call for ctrlline->svp. 2002-09-22 Lauris Kaplinski * configure.in: Version 0.26 * src/main.c: #include , thanks to Masatake Sun Sep 22 22:21:14 2002 Mitsuru Oka * src/sp-ruler.c: Bug fixed that misspelling s/GtkHRuler/SPHRuler/ and s/GtkVRuler/SPVRuler/. Sat Sep 21 03:02:21 2002 Mitsuru Oka * Now, sodipodi can build and start up again (but often cause segv). * src/display/canvas-arena.c, nr-arena-glyphs.h, nr-arena.c: Ported. * src/dialogs/export.c, text-edit.c: Ported. * src/widgets/sp-color-slider.c, sp-menu-button.c: Ported. * src/*.c, *.h: Ported. * glade/*.glade: conveted to glade-2. 2002-09-21 Lauris Kaplinski * src/dialogs/fill-style.c (sp_fill_style_widget_new): Fill rule selector (sp_fill_style_widget_update): Update fill rule selector (sp_fill_style_widget_update_repr): Ditto (sp_fill_style_widget_fill_rule_activate): Set fill-rule * src/document.c (sp_document_new): Do not set style * src/xml/repr.c (sp_repr_merge): Duplicate node without id key * src/sp-path.c (sp_path_build): Set fill to none for old version open path * src/bonobo/embeddable-document.c (sp_embeddable_document_pf_load): New document constructor signature, thanks to Ted Gould (sp_embeddable_document_ps_load): Ditto (sp_embeddable_document_new): Ditto * src/help.c (sp_help_about): use sp_text_set_repr_multiline * src/style.c (sp_style_write_difference): Rewind pointer * src/sp-ellipse.c (sp_genericellipse_set_shape): Request modified (sp_arc_modified): Implement, write path attribute 2002-09-20 Lauris Kaplinski * src/sp-object.c (sp_object_private_write): Duplicate repr if needed * src/xml/repr-util.c (sp_repr_set_double_default): New method * src/sp-rect.c (sp_rect_write): Set default on radiuses * src/sp-root.c (sp_root_write): Set namespaces here * src/xml/repr.c (sp_repr_document_new): Set doctype and comment * src/xml/repr-io.c (sp_repr_read_file): Set doctype and comment if SVG (sp_repr_read_mem): Ditto (sp_repr_save_stream): Save doctype and comment Thu Sep 19 19:24:04 2002 Mitsuru Oka * src/sp-marshal.*, src/Makefile.am: Removed old marshaller codes. 2002-09-19 Lauris Kaplinski * src/sp-text.c (sp_string_set_shape): Update position array (sp_text_get_cursor_coords): New method (sp_text_set_shape): Set tspan position to text, if unset; Limit block to tspans with unspecified role (sp_text_insert_line): Implement * src/text-context.c (sp_text_context_setup): Set blink to 250ms (sp_text_context_selection_modified): Implement, update cursor position (sp_text_context_selection_changed): Ditto (sp_text_context_root_handler): Cursor placement, insertion and deletion work as they should * src/display/nr-arena-shape.c (nr_arena_shape_update): Do not try to fill paths consisting of single lineto * src/gradient-chemistry.c (sp_gradient_ensure_private_normalized): Only keep if hrefcount == 1 (fixed bug) * src/style.c (sp_style_read): Only parse CMYK if RGBA present 2002-09-18 Lauris Kaplinski * src/sp-ellipse.c (sp_arc_set_elliptical_path_attribute): Lay 2PI arcs as 2 segments (sp_arc_write): Write SVG if it really is one * src/style.c (sp_style_write_ienum): We compare computed values, to avoid unnecessary setting of attributes (sp_style_merge_from_parent): Set only computed values for everything * src/helper/art-utils.c (sp_vpath_from_bpath_closepath): New method, borrowed relevant helpers from libart code * src/display/nr-arena-shape.c (nr_arena_shape_update): Closeall if filled, limit min width to 0.125 instead of cutting it to 0 2002-09-17 Lauris Kaplinski * src/event-context.c (sp_event_context_destroy): Do not disconnect desktop signal, as there is no such (sp_event_context_new): Do not connect desktop signal * src/draw-context.c (sp_pencil_context_root_handler): Changed grabbing only to happen, if pointer is moved button-down. This changed irritating double-click total grab problem. (sp_pen_context_root_handler): Ditto * src/display/nr-arena-group.c (nr_arena_group_update): Multiply with group second transformation * src/display/nr-arena-group.h: Added child_affine member * src/sp-root.c (sp_root_read_attr): Use NRMatrixD for viewbox (sp_root_show): Implement, apply viewBox (sp_root_bbox): Ditto (sp_root_print): Ditto * src/sp-item.c (sp_item_i2doc_affine): Apply viewBox Tue Sep 17 13:50:40 2002 Mitsuru Oka * src/dialogs/stroke-style.c: A few fix from my office. Mon Sep 16 21:31:33 2002 Mitsuru Oka * src/display/*: Really done. * src/*: Half done, but partially adhock. Mon Sep 16 14:22:10 2002 Mitsuru Oka * Start migration to GTK+2 environment. * Makefile.am, configure.in, acconfig.h: Use pkgconfig, GLib2, Pango, GTK+2, GNOME2, etc. * src/dialogs/*: Done. * src/display/*: Done. * src/helper/*: Done. * src/svg/*: Done. * src/widgets/*: Done. * src/xml/*: Done. * src/*: Partialy done. 2002-09-16 Lauris Kaplinski * src/helper/png-write.c (sp_png_get_block_stripe): Helper (sp_png_write_rgba): Use striped writer (sp_png_write_rgba_striped): New method * src/dialogs/export.c (sp_export_get_rows): Renderer (sp_export_do_export): Use striped exporter * src/file.c: Added - Thanks to Masatake for finding it 2002-09-15 Lauris Kaplinski * src/display/nr-arena-image.c (nr_arena_image_render): Use libnr transformed composition methods * src/libnr/nr-compose-transform.c: New file * src/libnr/nr-compose-transform.h: New file 2002-09-15 Masatake YAMATO * src/toolbox.c (sp_maintoolbox_drag_data_received): made it a static scoped function. (sp_maintoolbox_create): Connected sp_maintoolbox_drag_data_received to maintoolbox. (glade based version is obsoleted.) * src/toolbox.c (sp_maintoolbox_drag_data_received): removed declaration. 2002-09-15 Lauris Kaplinski * src/file.c (sp_file_save_as): Added "file type" optionmenu (sp_file_save_type_activate): Helper (file_save_ok): Save plain SVG if needed * src/sp-namedview.c (sp_namedview_write): Implement * src/sp-text.c (sp_text_write): Implement * src/sp-use.c (sp_use_write): implement * src/sp-root.c (sp_root_write): Implement * src/sp-polyline.c (sp_polyline_write): Implement * src/sp-line.c (sp_line_write): Implement * src/sp-image.c (sp_image_write): Implement * src/sp-gradient.c (sp_stop_write): Implement * src/sp-defs.c (sp_defs_write): Implement * src/sp-clippath.c (sp_clippath_write): Implement * src/sp-anchor.c (sp_anchor_write): Implement * src/sp-polygon.c (sp_polygon_write): new ::write syntax * src/sp-spiral.c (sp_spiral_write): New ::write syntax * src/sp-star.c (sp_star_write): New ::write syntax * src/sp-ellipse.c (sp_ellipse_write): New ::write syntax (sp_circle_write): Ditto (sp_arc_write): Ditto * src/sp-rect.c (sp_rect_write): New ::write syntax * src/sp-shape.c (sp_shape_write): New ::write syntax * src/star-context.c (sp_star_finish): New ::write syntax * src/spiral-context.c (sp_spiral_finish): New ::write syntax * src/knotholder.c (knot_moved_handler): new ::write syntax * src/sp-object.c (sp_object_invoke_write): Renamed and enhanced ::write_repr method, can now construct trees and write plain SVG * src/sp-item-group.c (sp_group_write): Implement 2002-09-14 Lauris Kaplinski * src/toolbox.c (sp_maintoolbox_menu_button_press): Construct main menu here dynamically * src/main.c (sp_main_console): Hide documents for nongui, slideshow * src/interface.c (sp_ui_file_menu): Recent list (sp_ui_main_menu): Ditto (sp_menu_append_recent_documents): New helper * src/help.c (sp_help_about): Hide document from list * src/file.c (sp_file_open): New method (sp_file_open_dialog): Renamed old sp_file_open * src/sodipodi.c (sodipodi_add_document): Emit "new_document" (sodipodi_remove_document): Emit "destroy_document", update recent list (sodipodi_segv_handler): Truncate filenames to sensible part * src/toolbox.c (sp_maintoolbox_open_one_file_with_check): Use sp_file_open 2002-09-13 Lauris Kaplinski * src/draw-context.c (sp_pencil_context_root_handler): Clear anchors (spdc_finish_endpoint): Ditto (spdc_pen_finish): Ditto * src/document.h: Moved uri/base/name to main structure * src/draw-context.c (sp_pen_context_finish): Call parent method, fixes habit of crashing after using pen 2002-09-12 Lauris Kaplinski * src/libnr/*: Started composing sensible library at last * src/document.c: Fix DTD typo * src/main.c (sp_main_gui): Moved setting LC_NUMERIC after gnome init (sp_main_console): Set LC_NUMERIC to "C" here too 2002-09-11 Lauris Kaplinski * configure.in: Version 0.26pre * src/display/Makefile.am (libspdisplay_a_SOURCES): Removed fill.[c,h] and stroke.[c,h] 2002-09-11 Lauris Kaplinski * 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 * 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 * 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 * 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 2002-09-09 Lauris Kaplinski * 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 * glade/toolbox.glade: Fixed non-ASCII character 2002-09-08 Lauris Kaplinski * 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 * 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 * 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 * 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 * src/sp-path.c (sp_path_build): Update SODIPODI-PATH-NODE-TYPES attribute 2002-09-03 Lauris Kaplinski * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * src/document-undo.c (sp_document_order_changed): Set correct action type 2002-08-17 Lauris Kaplinski * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 element 2002-07-26 Lauris Kaplinski * 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 * 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 * 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 * po/ja.po: Updated, thanks Junichi Uekawa Sat Jul 13 05:52:15 2002 Mitsuru Oka * 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 * 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 * 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 * 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 * src/sp-rect.c (sp_rect_rx_set): Make argument const, kill warning (sp_rect_ry_set): Ditto 2002-04-12 Lauris Kaplinski * src/sp-text.h: Broke into SPText, SPTSpan and SPString objects * src/sp-text.c (sp_text_build): Build and TEXT elements * src/forward.h: Moved SPText and SPTSpan here 2002-04-08 Lauris Kaplinski * 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 * 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 * 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 * 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 * src/sp-rect.c (sp_rect_*_set): Fixed a little. 2002-03-22 Davide Puricelli * Updated debian/ directory, synced with Debian unstable. 2002-03-18 Lauris Kaplinski * configure.in: Disabled frontline check, until I find time to make it to work without frontline too 2002-03-18 Masatake YAMATO * 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 * 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 * 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 * configure.in: Added "sk" to ALL_LINGUAS. Sun Mar 10 21:00:01 2002 Mitsuru Oka * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * src/desktop.c (sp_desktop_widget_destroy): Removed stale signal disconnect (no idea what it was originally for) 2002-02-09 Lauris Kaplinski * configure.in: Removed rbuf, frgba, new font checks and arena switch * src/sp-namedview.c (sp_namedview_setup_grid_item): Grid settings are always in points, units are there just for user preference (sp_namedview_read_attr): Ditto * src/desktop-snap.c (sp_desktop_horizontal_snap): Read snap distances from new desktop members (sp_desktop_vertical_snap): Ditto (sp_desktop_vector_snap): Ditto (sp_desktop_circular_snap): Ditto * src/desktop-handles.c (sp_desktop_canvas): Update to new desktop structure * src/sodipodi.c (sodipodi_activate_desktop_private): Default method implementation to chain activation signal on desktop (sodipodi_deactivate_desktop_private): Ditto * src/desktop.c (sp_desktop_new): Owner does not have document pointer any more, so had to change signature here (sp_desktop_widget_init): Moved activation signals to public constructor (sp_dtw_desktop_activate): Activation signal handler (sp_dtw_desktop_deactivate): Ditto (sp_desktop_widget_new): Use desktop "activate" and "deactivate" signals instead of sodipodi ones, signature change (sp_desktop_class_init): Added "activate" and "deactivate" signals * src/dialogs/display-settings.c: Removed glade, made mostly dynamic * src/sodipodi.c (sodipodi_remove_desktop): Emit "destroy_desktop" if destroyed one was not active too (sodipodi_refresh_display): Convenience method 2002-02-08 Lauris Kaplinski * 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 * src/sp-item.c (sp_item_distance_to_svg_bbox): Fix compilation error 2002-02-03 Lauris Kaplinski * 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 * glade/object_props.glade: Fix a typo. s/Mitter/Miter/ 2002-01-27 Lauris Kaplinski * src/bonobo/Makefile.am (INCLUDES): Remove excess -I 2002-01-21 Lauris Kaplinski * 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 * configure.in(ALL_LINGUAS): Added zh_CN for Simplifed Chinese. 2002-01-05 Mitsuru Oka * src/helper/bezier-utils.c (BEZIER_DEBUG): inhibit debug messages. 2002-01-04 Zbigniew Chyla * 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 * 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 . 2001-12-30 Lauris Kaplinski * 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 * 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 * 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 * src/knotholder.c (knot_moved_handler): Lauris found a incorrect invert matrix bug. I just fixed it. 2001-12-28 Simos Xenitellis * configure.in: Added "el" (Greek) to ALL_LINGUAS. 2001-12-28 Lauris Kaplinski * 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 * 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 * 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 * 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 * Added Alvaro Lopes portuguese translation to configure.in (ALL_LINGUAS) 01-11-19 Lauris Kaplinski * src/preferences-skeleton.h: Removed '%' from opacity 2001-11-12 Lauris Kaplinski * 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 * 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 * 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 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 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 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 * 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 * 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 * src/widgets/sp-toolbox.*: patch from MenTaLguY 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 * src/display/nr-arena-image.c (nr_arena_image_render): Use right pixel coposers * configure.in: Version 0.25 2001-10-18 Lauris Kaplinski * 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 * 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 * src/dynadraw-context.c: Removed rotating brush bug * src/draw-context.h: Removed duplicate bezier-fitting code 2001-10-12 Lauris Kaplinski * 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 * 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 * 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 * 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 * src/xml/repr-io.c (sp_repr_save_stream): Correct header 2001-10-02 Peter Moulder * 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 * 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 * src/sp-shape.c (sp_shape_print): Use rule for clip and fill (sp_shape_paint): Use winding rule 2001-09-30 Lauris Kaplinski * 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 * src/selection-chemistry.c (sp_selection_lower_to_bottom): Do not lower behind non-items (i.e. base 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 * 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 * src/sp-text.c (sp_text_read_attr): Use unit-loading method for x & y 2001-09-25 Christopher R. Gabriel * sodipodi.1.in: new man page * configure.in: Likewise * Makefile.am (man_MANS): Likewise 2001-09-24 Frank Felfe * 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 * 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 * src/svg/svg-path.c: Quick port of latest librsvg path code 2001-09-19 Lauris Kaplinski * 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 * 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 * 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 * 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 * 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 * 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 * src/sp-header.c: New file, implements document header, consisting of nested nodes, for different resource definitions * src/sp-header.h: New file * src/forward.h: Added SPHeader forward typedefs 2001-09-05 Lauris Kaplinski * 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 * 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 * 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 * src/forward.h: typedef SPDefs[Class] here * src/sp-root.h: Added pointer to root-level node * src/sp-gradient.c (sp_stop_get_type): Fixed type on type init 2001-08-30 Lauris Kaplinski * src/document.c (sp_document_new): Use fill-opacity 0.5, not 50% 2001-08-21 Lauris Kaplinski * 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 * 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 * 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 * 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 * 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 * src/sp-item-group.c: #include for i18n * src/sp-item.c: Ditto * src/event-context.c: Ditto * src/toolbox.c: Ditto 2001-07-25 Lauris Kaplinski * src/document-undo.c (sp_document_maybe_done): New function 2001-07-19 Lauris Kaplinski * 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 * 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 * src/xml/repr-io.c (sp_repr_svg_read_node): Preserve namespaces for everything but "svg" 2001-07-07 F.J.Franklin * 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 * 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 * 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 * 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 * 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 * 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 * 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 * configure.in (use_arena): Added with-arena flag * acconfig.h: Added ARENA 2001-04-16 Jesus Bravo Alvarez * configure.in: Added gl (Galician) to ALL_LINGUAS 2001-04-14 Lauris Kaplinski * 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 * 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 * 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 * src/svg/Makefile.am (INCLUDES): Add SODIPODI_CFLAGS 2001-03-21 Lauris Kaplinski * 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 * 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 * 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 * glade/Makefile.am (pixmaps): Added all pixmaps to dist * configure.in: Version 0.22 2001-03-09 Frank Felfe * 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 * 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 * 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 * 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 * configure.in: depend on Bonobo >= 0.37. 2001-02-21 Lauris Kaplinski * configure.in: Commented out GNOME_PRINT_CHECK 2001-02-19 Lauris Kaplinski * 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 * src/sp-object.c (sp_object_getAttribute): New function (sp_object_setAttribute): New function (sp_object_removeAttribute): New function 2001-02-11 Lauris Kaplinski * configure.in: Added es to ALL_LINGUAS 2001-02-07 Lauris Kaplinski * 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 * samples/mangatips3.svg: New file * samples/mangatips4.svg: New file * samples/mangatips5.svg: New file 2001-01-29 Fatih Demir * src/widgets/.cvsignore: Added this. 2001-01-26 Lauris Kaplinski * configure.in: Version 0.21 2001-01-24 Lauris Kaplinski * 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 * src/desktop (sp_desktop_change_document): Update namedviews aslo 2001-01-09 Lauris Kaplinski * samples/mangatips1.svg: New file * samples/mangatips2.svg: New file * src/xml/Makefile.am: Use SODIPODI_CFLAGS 2001-01-08 Frank Felfe * 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 * 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 * 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 * 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 * 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 * src/main.c (main): Reenable command-line filenames * src/sodipodi.* (sodipodi_application_new): New function 2000-12-29 Michael Meeks * 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 * configure.in (ALL_LINGUAS): 'it' 2000-12-27 Lauris Kaplinski * 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 * 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 * 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 * src/display/nr-svp-render.c: Lot's of cleanup 2000-12-20 Lauris Kaplinski * 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 * 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 * 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 * src/display/nr-canvas-group.*: Base class for canvas groups * src/display/nr-primitives.*: Graphic primitives 2000-12-15 Lauris Kaplinski * 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 * glade/toolbox.c: corrected "zom factor" to "zoom factor" 2000-11-30 Szabolcs Ban * configure.in (ALL_LINGUAS): add hu. 2000-11-26 Lauris Kaplinski * 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 * debian/: added the debian scripts from package maintainer, Davide Puricelli 2000-11-17 Yuri Syrota * glade/transformation.c * glade/transformation.glade: correct "vertival move" to "vertical move" 2000-11-17 Lauris Kaplinski * src/dialogs/text/edit.c (sp-text-dialog-close): Destroy dialog, so font listing will be regenerated 2000-11-02 Michael Meeks * configure.in: Check for bonobo >= 0.27 2000-10-27 Michael Meeks * configure.in (ALL_LINGUAS): add pt_BR. 2000-10-26 Lauris Kaplinski * 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 * configure.in: Added pl to ALL_LINGUAS. 2000-10-21 Zbigniew Chyla * sodipodi/src/toolbox.c (sp_maintoolbox_create): Marked strings for translation. 2000-10-18 Christophe Merlet * configure.in: Oups, forgotten to add French (fr) to $ALL_LINGUAS 2000-10-18 Christophe Merlet * sodipodi.desktop: Added French string. 2000-10-17 Lauris Kaplinski * src/nodepath.c (sp_nodepath_node_destroy): fixed YANC (Yet Another Nodepath Crash) 2000-10-16 Frank Felfe * 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 * src/text-context.c (sp_text_context_item_handler): Return if repr == NULL; Commit changes to undo stack. 2000-10-11 Lauris Kaplinski * src/draw-context.c (sp_draw_context-destroy): Detach signal 2000-10-11 Frederic Devernay * 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 * 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 * src/dialogs/object-properties.c: Do not keep CSS objects, so fill & stroke do not overwrite each other settings 2000-10-08 Frank Felfe * 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 * 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 * 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 * 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 * 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 * src/nodepath.c: #define reasonable knot colors (sp_nodepath_selected_nodes_move): Implement snapping (node_ctrl_request): Implement snapping 2000-10-03 Lauris Kaplinski * 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 * 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 * configure.in ALL_LINGUAS: Add Japanese 'ja' 2000-09-21 Pablo Saratxaga * configure.in: ALL_LINGUAS: added 'ca' for Catalan translation. 2000-09-18 Lauris Kaplinski * 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 * 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 * 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 * src/sp-line.h, sp-line.c: item * src/sp-polyline.h, sp-polyline.c: item * src/sp-polygon.c, sp-polygon.h: 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 * 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 * 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 * 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 * 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 * 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 * configure.in: ALL_LINGUAS: added 'ga' for Irish translation. 2000-08-19 Lauris Kaplinski * 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 * 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 * glade/stroke.glade: Moved dialog to separate file * Added Frank Felfe icons, that I forgot last time 2000-08-10 Lauris Kaplinski * 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 * configure.in: Need bonobo >= 0.17 * src/bonobo/embeddable-document.c (sp_bonobo_stream_read): Bonobo API change 2000-08-10 Lauris Kaplinski * doc/architecture.txt: First step in generating developers documentation 2000-08-09 Lauris Kaplinski * 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 * 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 * configure.in: update for BonoboX 2000-07-01 Lauris Kaplinski * 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 * 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 * 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 * 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 * 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 * configure.in: Added de to ALL_LINGUAS. * sodipodi.desktop: Added German translations 2000-06-05 Lauris Kaplinski * src/dialogs/export.c (sp_export_do_export): use pixbuf context, instead of rbuf 2000-06-05 Michael Meeks * 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 * 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 * src/document-private.h: Removed width and height attributes * src/sp-root.c: Added "width" and "height" readable attributes 2000-05-12 Lauris Kaplinski * 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 * 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 * 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 * 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 * 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 * src/knot.h: Added signals "grab", "ungrab" and "move" * src/knot.c: Implemented signals, event etc. 2000-05-05 Lauris Kaplinski * src/desktop-handles.h: Added SP_DT_IS_EDITABLE * src/knot.*: started implementing universal handle object for all contexts 2000-05-05 Lauris Kaplinski * src/Makefile.am: Define $gladedir, which has been forgotten :) * src/sp-image.c (sp_image_print): Do it :) 2000-05-03 Lauris Kaplinski * 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 * 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 * src/sp-gradient.*: Implemented skeleton for gradient fills * src/sp-object-repr.c: Gradient parsing 2000-05-01 Lauris Kaplinski * src/helper/sodipodi-ctrl.c: Fixed bug in ::render, which left buffer->is_bg untouched * src/sp-defs.*: New objects, implementing 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 * xml/repr.*: Reprs are now GtkObjects * xml/repr-io.c: Preliminary namespacing (xmlns:sodipodi) 2000-04-29 Lauris Kaplinski * 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 * 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 * 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 * src/dialogs/xml-tree.c: Attribute deletion mostly work 2000-04-27 Lauris Kaplinski * src/dialogs/xml-tree.*: Started implementing direct xml editing * glade/xml-tree.glade: XML editing dialogs 2000-04-26 Lauris Kaplinski * helper/curve.c (sp_curve_split): Fixed evil memcpy size bug 2000-04-24 Lauris Kaplinski * src/selection-chemistry.c: Implemented Cut/Copy/Paste 2000-04-23 Lauris Kaplinski * 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 * 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 * 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 * 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 * configure.in : Added tr to ALL_LINGUAS . * sodipodi.desktop : Added [tr] .. 2000-04-20 Lauris Kaplinski * 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 * sodipodi.desktop: Added Swedish translation. * configure.in: Added sv to ALL_LINGUAS. 2000-04-19 Lauris Kaplinski * 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 * src/sp-image.c: completed migration to new gdk-pixbuf * src/display/canvas-image.c: completed migration 2000-04-17 Michael Meeks * src/sp-image.c (sp_image_pixbuf_force_rgba): fix. (sp_image_bbox): fix. 2000-04-14 Lauris Kaplinski * Makefile.am: fixed .desktop inclusion to distribution 2000-04-12 Pablo Saratxaga Pablo * configure.in (ALL_LINGUAS): Add Danish 200-04-09 Lauris Kaplinski * bonobo/canvas-translator.*: implemented a translator group, which translates xlib canvas calls to antialiased canvas ones. 200-04-09 Lauris Kaplinski * 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 * Makefile.am: create sodipodi-bonobo symlink if we use bonobo * src/sodipodi/*: Added bonobo component, nothing interesting yet 200-04-07 Lauris Kaplinski * sodipodi.gnorba: added this, embeddable document will follow soon * configure.in: added bonobo check 200-04-07 Lauris Kaplinski * 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 * no.po: Added no to ALL_LINGUAS. 2000-04-05 Lauris Kaplinski * sp-document.c, sp-file.c, sp-image.c: removed namespace. How to extract this correctly from libxml? 2000-04-05 Lauris Kaplinski * 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 * xml/repr-io.c: save DTD & standard header * dialogs/object-*: modify default fill & stroke, if nothing selected 2000-04-04 Lauris Kaplinski * 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 * 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 * document-undo.c, document.c: Undo should now work! 2000-04-01 Lauris Kaplinski * document.c: Some undoing/redoing works (duplicate & delete) 2000-04-01 Lauris Kaplinski * sp-item-group.c: cleaned up signals, reordering should work now * hunted memory leaks & removed most obvious ones 2000-03-31 Lauris Kaplinski * Basically completed rewrite, most things do not work 2000-03-30 Lauris Kaplinski * Bumped version number to 0.18 & started rewrite of object system 2000-03-29 Lauris Kaplinski * 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 * 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 * 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 * dialogs/export.*: a bit better png exporting, still sucks 2000-01-25 Lauris Kaplinski * sp-image.c: Cleanups here and there * display/canvas-image.c: point method uses alpha, removed SVP-s 2000-01-23 Lauris Kaplinski * helper/art*: functions for rendering into RGBA buffer * file.*, sp-shape.*, sp-image.*: exporting png bitmaps 2000-01-23 Lauris Kaplinski * Uses SPCurve everywhere 2000-01-19 Lauris Kaplinski * 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 * 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 * Now uses Gnome MDI * Stroke & fill dialogs almost work for multiple displays 2000-01-08 Lauris Kaplinski * 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 * 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 * 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 * 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 * Rewrote many things and hacked up the rest. Removed Gdome dependency, as I had neither time nor patience to mess with it. As a temporary solution I've created SPRepr objects, which can contain xml data. Added functions: group, ungroup, delete, duplicate, to_front, to_back, up, down Freehand drawing almost works although need some cleanup Outlines are implemented, although not usable yet Rect can handle round corners i hope Ellipse can be sliced # Local Variables: # tab-width:8 # indent-tabs-mode:t # End: # vim: tabstop=4:noexpandtab:shiftwidth=4