----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://git.reviewboard.kde.org/r/109393/ -----------------------------------------------------------
(Updated March 18, 2013, 6:39 p.m.) Review request for Calligra. Changes ------- This is version 4 of this patch. Changes: - Simplified the backend API. It's now only one callback function per tag and an added parameter that tells if it's the start or the end of the tag. - Put the Context in it's own file. - Heavily extended the comments and made Doxygen class documentations from the expanded ones. I know that this is not the final solution. This library is going to see more development, especially in the table and frame departments. I am also open to change into using a QXmlStreamReader based approach. However, I think that the current code is good enough to merge now and further development should be based on some real usecase, e.g. the docx export filter that is the target for this library. The first version is only going to export text and simple formatting and for that it's good enough already. Description ------- This patch creates a new library in filters/odftraverse. The purpose of this library is to create classes to make it easier to create export filters for ODF files. What you do to use this library is that you inherit a base class for backends to this parser / traverser and in the many callbacks you write the output that is relevant for your output format. To show how it can be used I have also created a very simple proof of concept filter that exports to text format, something Calligra actually lacked before. The current implementation traverses only ODT files and there are still a number of NYI functions that I want to finish before the actual merge. But I thought I'd get some opinions early. In other words, I expect at least one, maybe two iterations before this branch can be merged. Diffs (updated) ----- filters/CMakeLists.txt 8bcd640 filters/libodftraverse/CMakeLists.txt PRE-CREATION filters/libodftraverse/OdfParser.h PRE-CREATION filters/libodftraverse/OdfParser.cpp PRE-CREATION filters/libodftraverse/OdfTraverserContext.h PRE-CREATION filters/libodftraverse/OdfTraverserContext.cpp PRE-CREATION filters/libodftraverse/OdtTraverser.h PRE-CREATION filters/libodftraverse/OdtTraverser.cpp PRE-CREATION filters/libodftraverse/OdtTraverserBackend.h PRE-CREATION filters/libodftraverse/OdtTraverserBackend.cpp PRE-CREATION filters/libodftraverse/odftraverse_export.h PRE-CREATION filters/words/ascii/AsciiExport.h PRE-CREATION filters/words/ascii/AsciiExport.cpp PRE-CREATION filters/words/ascii/CMakeLists.txt d36de47 filters/words/ascii/OdtTraverserAsciiBackend.h PRE-CREATION filters/words/ascii/OdtTraverserAsciiBackend.cpp PRE-CREATION filters/words/ascii/TODO ceb1a24 filters/words/ascii/words_ascii_export.desktop PRE-CREATION Diff: http://git.reviewboard.kde.org/r/109393/diff/ Testing ------- Tested with a lengthy text file. Thanks, Inge Wallin
_______________________________________________ calligra-devel mailing list calligra-devel@kde.org https://mail.kde.org/mailman/listinfo/calligra-devel