5dadcd1ea9
using range based for loops instead of index based to increase readability in codebase Change-Id: Ib8c3ec3796fce9228cee1d90beb924128b0dea3f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162950 Tested-by: Jenkins Reviewed-by: Hossein <hossein@libreoffice.org> |
||
---|---|---|
.. | ||
inc | ||
qa/cppunit | ||
source/filter | ||
util | ||
CppunitTest_lotuswordpro_import_test.mk | ||
CppunitTest_lotuswordpro_test_lotuswordpro.mk | ||
IwyuFilter_lotuswordpro.yaml | ||
Library_lwpft.mk | ||
Makefile | ||
Module_lotuswordpro.mk | ||
README.md |
Import Filter for File Format of Lotus Word Pro (lwp)
Description
⚠️ Import Filter supports only Lotus Word Pro 97 and next versions
The import is not direct, but via an intermediate format: StarOffice XML,
the predecessor of ODF (yes, the code is old). The entry point to
the filter is class LotusWordProImportFilter
(refer to Source code
section), but that just hooks up the necessary machinery for processing
StarOffice XML produced by the filter. The real fun starts in function
ReadWordproFile()
(source/filter/lwpfilter.cxx
); this function
initializes the parser (class Lwp9Reader
) and the SAX XML handler that
produces the output (class XFSaxStream
). The Lwp9Reader
class then does
the actual parsing.
If the module is built with debug level greater than 0
, it is possible
to examine the intermediate XML: set environment variable
DBG_LWPIMPORT_DIR=
to an existing directory. During opening an .lwp
document, a file named lwpimport.xml
will be created in DBG_LWPIMPORT_DIR
directory.
Source Code
Module Contents
inc
: module-global headers (can be included by any file in source)qa
:cppunit
testssource
: the filter itselfutil
: UNO passive registration config
Source Contents
filter
:lwp
document format parserfilter/LotusWordProImportFilter.cxx
: the entry point to the filterfilter/xfilter
: export to StarOffice XML