derive SwUndo from SfxUndoAction.
throw away most of docundo.cxx.
throw away SwUndoStart and SwUndoEnd.
replace SwUndoIter with sw::UndoRedoContext and sw::RepeatContext.
SwUndo::GetId() no longer public to prevent abuse.
add SwEditShell::HandleUndoRedoContext().
unfortunately several places need the ID, so add the ID as an out parameter.
a bool return is necessary in case the Undo action is not a writer action,
but created via the undo API.
remove class SwUndoIdAndName and associated pointer abuse.
split up IDocumentUndoRedo::Get{Undo,Redo}Ids():
Get{LastUndo,FirstRedo,Repeat}Info() return string and ID for current action.
Get{Undo,Redo}Comments() return all Undo/Redo comments.
adapt SwEditShell interface as well.
remove static {Get,Set}UndoActionCount() from SwDoc, UndoManager, SwEditShell.
use the already existing UndoOptions in SwModule instead.
refactor the ugly hack with undo in SwInputWindow a little.
move the undo nodes array from SwDoc to sw::UndoManager.
replace GetUndoNds() with IsUndoNodes(), covering 90% of callers.
add sw::UndoManager::GetUndoNodes() for use by the Undo implementation itself.
remove unused horrible parameter from Writer::NewSwPaM().
replace {get,set}UndoNoModifiedPosition with {,Un}LockUndoNoModifiedPosition()
for preserving it across SaveAs, and SetUndoNoModifiedPosition() for use
by SwDoc::SetModified().
new header UndoManager.hxx, new class sw::UndoManager.
UndoManager implements the IDocumentUndoRedo interface.
SwDoc has UndoManager member, and forwards IDocumentUndoRedo calls.