Review Request 118532: Proper handling of sections for Words and Author

Denis Kuplyakov dener.kup at gmail.com
Tue Jul 22 16:13:08 BST 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/118532/
-----------------------------------------------------------

(Updated Июль 22, 2014, 3:13 п.п.)


Review request for Calligra, Camilla Boemann, Inge Wallin, and Dan Leinir Turthra Jensen.


Changes
-------

UnitTest added for section deletion.
Fixed some bugs in updating KoSectionManager state.
Implemented merge for RenameSectionCommand.


Repository: calligra


Description
-------

This adds proper section handling to code. It concentrates on managing to not break section structure during editing of text.
Patch fixes many things:
1) Insertion of text into sections
2) Deletion of text with sections
3) Cut, paste of text with sections
4) Applying style doesn't remove section info
5) WORDS product set added for fast building of Words and Author
6) Sections visual indication (need improvements)

Future TODOS:
1) improving section indication (DONE)
2) ability to insert section (DONE)
3) adding unittests
4) change icon for "New section" functionality (DONE)
5) we should read "Undo New section" in edit, after inserting new one (DONE)
6) fix indication of sections for multipage documents (DONE)


Diffs (updated)
-----

  libs/flake/KoCanvasResourceManager.h 2ad1c6f 
  libs/flake/KoShapeLoadingContext.h 1e7d196 
  libs/flake/KoShapeLoadingContext.cpp 65c9cbe 
  libs/flake/KoShapePaintingContext.h a7d15fd 
  libs/flake/KoShapePaintingContext.cpp 28ce859 
  libs/kotext/CMakeLists.txt 44fa937 
  libs/kotext/KoSection.h ac3fdd8 
  libs/kotext/KoSection.cpp 72e504f 
  libs/kotext/KoSectionEnd.h PRE-CREATION 
  libs/kotext/KoSectionEnd.cpp PRE-CREATION 
  libs/kotext/KoSectionManager.h PRE-CREATION 
  libs/kotext/KoSectionManager.cpp PRE-CREATION 
  libs/kotext/KoSectionUtils.h PRE-CREATION 
  libs/kotext/KoSectionUtils.cpp PRE-CREATION 
  libs/kotext/KoTextDocument.h b11100c 
  libs/kotext/KoTextDocument.cpp 08d1295 
  libs/kotext/KoTextEditor.h 1a47d2e 
  libs/kotext/KoTextEditor.cpp 3d5e1ff 
  libs/kotext/KoTextEditor_format.cpp 663f6cf 
  libs/kotext/KoTextPaste.cpp 3c8e4fc 
  libs/kotext/commands/ChangeListCommand.h bc49578 
  libs/kotext/commands/DeleteCommand.h bb02be0 
  libs/kotext/commands/DeleteCommand.cpp db5ff53 
  libs/kotext/commands/NewSectionCommand.h PRE-CREATION 
  libs/kotext/commands/NewSectionCommand.cpp PRE-CREATION 
  libs/kotext/commands/RenameSectionCommand.h PRE-CREATION 
  libs/kotext/commands/RenameSectionCommand.cpp PRE-CREATION 
  libs/kotext/opendocument/KoTextLoader.h 9e1c321 
  libs/kotext/opendocument/KoTextLoader.cpp 369b8c1 
  libs/kotext/opendocument/KoTextWriter_p.cpp 4449f44 
  libs/kotext/tests/TestKoTextEditor.h a2c2c09 
  libs/kotext/tests/TestKoTextEditor.cpp 9daa2e6 
  libs/kundo2/kundo2magicstring.h a911141 
  libs/kundo2/kundo2stack.h 7b2bdda 
  libs/odf/KoOdfPaste.cpp e0db35e 
  libs/textlayout/KoTextDocumentLayout.h 6c44aa3 
  libs/textlayout/KoTextLayoutArea.h 8ec51a6 
  libs/textlayout/KoTextLayoutArea_paint.cpp 3164a77 
  plugins/textshape/CMakeLists.txt 0e29ebb 
  plugins/textshape/TextShape.cpp 23eac60 
  plugins/textshape/TextTool.h 3409292 
  plugins/textshape/TextTool.cpp 913bca0 
  plugins/textshape/dialogs/SectionFormatDialog.h PRE-CREATION 
  plugins/textshape/dialogs/SectionFormatDialog.cpp PRE-CREATION 
  plugins/textshape/dialogs/SectionFormatDialog.ui PRE-CREATION 
  plugins/textshape/dialogs/SimpleInsertWidget.cpp c2f083f 
  plugins/textshape/dialogs/SimpleInsertWidget.ui 4b9c639 
  words/part/CMakeLists.txt 870d674 
  words/part/KWApplicationConfig.h 87f1016 
  words/part/KWApplicationConfig.cpp 1df6557 
  words/part/KWDocument.h 4bc53e1 
  words/part/KWDocument.cpp 46b5e41 
  words/part/KWFactory.cpp 9894f40 
  words/part/KWOdfLoader.cpp 4f82faa 
  words/part/KWView.h 50ee760 
  words/part/KWView.cpp 1ec4f7b 
  words/part/author/CAuFactory.cpp 6813963 
  words/part/author/CoverSelectionDialog.h 9f2b0dd 
  words/part/dockers/KWDebugDocker.h PRE-CREATION 
  words/part/dockers/KWDebugDocker.cpp PRE-CREATION 
  words/part/dockers/KWDebugDockerFactory.h PRE-CREATION 
  words/part/dockers/KWDebugDockerFactory.cpp PRE-CREATION 
  words/part/dockers/KWDebugWidget.h PRE-CREATION 
  words/part/dockers/KWDebugWidget.cpp PRE-CREATION 
  words/part/words.rc c3a9822 

Diff: https://git.reviewboard.kde.org/r/118532/diff/


Testing
-------

I have tested all functionality with emphasis on deletion. It has the most complicated code and need very good testing.
You can use LibreOffice Writer to create document with sections and then test editing it in words. And I will attach one I've used.


File Attachments
----------------

File for testing
  https://git.reviewboard.kde.org/media/uploaded/files/2014/06/04/f87d4ce2-3ab9-48a4-a880-4caa586790fc__Test-orig.odt


Thanks,

Denis Kuplyakov

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/calligra-devel/attachments/20140722/f95349ba/attachment.htm>


More information about the calligra-devel mailing list