summaryrefslogtreecommitdiffstats
path: root/lotuswordpro/README.md
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--lotuswordpro/README.md31
1 files changed, 31 insertions, 0 deletions
diff --git a/lotuswordpro/README.md b/lotuswordpro/README.md
new file mode 100644
index 000000000..fc58c3fe4
--- /dev/null
+++ b/lotuswordpro/README.md
@@ -0,0 +1,31 @@
+# Import Filter for File Format of Lotus Word Pro (lwp)
+
+## Description
+
+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 and, on opening an lwp
+document, a file named `lwpimport.xml` will be created in that directory.
+
+## Source Code
+
+### Module Contents
+* `inc`: module-global headers (can be included by any file in source)
+* `qa`: `cppunit` tests
+* `source`: the filter itself
+* `util`: UNO passive registration config
+
+### Source Contents
+* `filter`: `lwp` document format parser
+* `filter/LotusWordProImportFilter.cxx`: the entry point to the filter
+* `filter/xfilter`: export to StarOffice XML