Feel free to add or modify todos as they appear when working on karbon.
Before working on some of the following, just add your name beside the todo 
you want to work on so there is no duplicate work.

Svg-Filters:
------------
- http://www.qtsoftware.com/products/appdev/add-on-products/catalog/4/Utilities/qtimagefilters
- saving/loading filters to odg ?
- filters on group shapes

Shapes/Tools:
---------------
- implement something like words/part/frames/KWCopyShape.h
- an object snap tool:
    - define a snap point on the selected object(s) which can snap to features of the selection
    - move the selection which then snaps the defined snap point to other objects
- outline snapping strategy -> snap to path outline

ODF support:
------------
- use http://netmoc.cpe.ucf.edu/Projects/OpenDocument/TestSuite.html for testing (when they have some more drawing tests)
- add support for saving shape opacity in odf

Dockers:
--------
- implement reordering of shapes and layers in the layer docker (d'n'd)

Plugins:
--------
- implement a tracing plugin for tracing images (potrace...)
- time scale plugin (http://vimeo.com/1015679)

Filters:
--------
- fix the eps and ps filters (maybe using ps2pdf and then use a pdf import filter)
- port pdf filter to plain c++ so it can be included into poppler
- look at popplers TextOutputDev to fix text conversion
- svg export filter: save shapes not supported by svg using a switch element and use an image as fallback

Cleanup:
--------
- move cut, paste, copy, deleteSelection into KoToolSelection -> patch to Zagge
- remove selection order actions and use the ones from the default tool
- make gradient and pattern tool dockers smaller
- port away from deprecated plugin loading macros:
-> old: http://websvn.kde.org/trunk/KDE/kdelibs/kdecore/tests/klibloadertest_module.cpp?revision=731001&view=markup
-> new: http://websvn.kde.org/trunk/KDE/kdelibs/kdecore/tests/klibloadertest4_module.cpp?revision=733166&view=markup

General:
--------
- consider the old todos and wishes when implementing/porting the above parts

- implement function to resize page to current drawing
- check if we still need the KarbonDocument::shapes() method or the complete list of shapes

- finally implement the close path command

- for big drawings it might be cool to have the outline mode with the option
  of fully rendering only the current selection

- add crop marks generation/placement 
    - http://www.thevisualsense.com/bleedcropmarks.html
    - http://desktoppub.about.com/library/glossary/blg_crop.htm
    - generate crop marks from selection/shapes
    - optionally link crops marks to the selection/shape (to move when the objects move)
    - page crop marks always keep their position

- pattern borders support (is not specified in odf though!)
- add pasteOffset as canvas resource to be used for pasting shapes
- add more templates
    - cd label -> lots of guide lines
    - dvd cover -> guide lines
    - icon -> quadratic page size
    - wallpaper -> using sreen resolution

- rename Dependee* in KoShape to Follower* as suggested by Thomas

- don't use shape in the svg import filter directly, create a shape using the shape factory and 
  provide the properties 
  -> one problem: the shape ids are in the header files

- add Get Hot New Stuff support into filter effects tool

Bugs:
-----
- when undoing text attach/detach commands the text cursor causes some painting artifacts
- when artistic text is grouped, one cannot edit the text

- see http://techbase.kde.org/Contribute/Bugsquad/BugDays/CalligraDay2/Karbon
- implement pattern stretch other than tile in svg import/export

- svgimport: when object bounding mode, use matrix to scale radius in both directions 
    -> see pservers-grad-02-b.svg
- save gradients in bounding box mode for odf and load them like that too

- save and load state of rulers (on/off)

- fix layout of style docker

Backports:
----------
1041379
1042517
1056096

Screencast:
----------

