[prev in list] [next in list] [prev in thread] [next in thread] 

List:       koffice
Subject:    Re: Abiword/KWord cooperation
From:       "Shaheed Haque" <shaheedhaque () hotmail ! com>
Date:       2000-04-20 21:04:37
[Download RAW message or body]

Hi Joaquin and all,

[ Sorry I've not been listening, as Joel mentioned, I've been in 
end-of-project mode at work. ]

Anyway, I think that there is plenty of scope for cooperation between the wv 
codebase and the kword MS filter; I hung out on the abi mailing list before 
I got started and was impressed by the amount of effort that is going into 
this stuff.

I'm open to other influences/good ideas, but here is my current thinking...

1. The MS file format is fundamentally dreadful, and has been through many 
iterations. Looking at all the frustrated comments in the wv code makes this 
clear even to the casual observer.

2. There is structure to be extracted even from the MS file format, and that 
is what my code attempts to do at the level of I/O from/to OLE stream layer. 
Since I am focussing on Input at the moment, any architectural thoughts on 
Output are particularly welcome. Since much of the code is machine 
generated, I should be able to make structural changes quite easily.

3. This I/O abstraction layer will hide all the intricacies of the MS file 
format and present a reasonably linear/unconvoluted view of the data. Once 
this I/O abstraction layer is stable and a bit more complete, the next layer 
of code can be written to actually interpret the data and translate it 
without having to worry about all the low-level MS file format crap. That's 
where the accumulated knowledge of wv will be invaluable in interpreting the 
raw data. However, it is not yet clear to me how I can import that knowledge 
from the wv code base, since I had some difficulty disentangling the logic 
from the I/O structure when looking at it. Any ideas here are also very 
welcome.

4. Above this interpretation layer I hope to have another reasonably clean 
interface. That is where the translation will occur to kword; it is my hope 
that alternative clients would be supportable (the only toolkit specific 
thing in the current code is some use of QStrings, but that's just because 
I'm being a bit lazy and am generally ignorant of Unicode :-)).

At the moment, an experimental "learning" version of the I/O abstraction 
layer is taking shape. The other two layers are kind of squashed into a 
minimal amount of code that (a) makes the basic import of text possible and 
(b) acts as a test harness. I'll be offline for 2-3 more weeks, but then 
hope to renew the attack on this layer.

As you can see, there is a mountain of work; so all help is welcome! I hope 
this makes sense to you, and look forward to hearing from you.

	Thanks, Shaheed

BTW: One of the major reasons I did not use wv directly as I think Abi has 
done was my belief in the need for this layering.
________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic