Use the Observer and Externsion Interface patterns to hide the view and the document more.
This setups tools so they can be dynamically loaded. It allows for special cases (i.e. paste) to be exterminated. This allows for tools to have more information about their settings even if they are not the currently selected, yet still have better encapsulation. This of course, at the same time, breaks all existing tools. svn path=/trunk/koffice/; revision=265115