William Lachance wrote:
> On 8/18/06, Fridrich Strba <[EMAIL PROTECTED]> wrote:
>> Andrew Ziem wrote:
>> > I have started* a Microsoft Works (.wps) document importer.  Since
>> > libwpd has been incorporated into three word processors, I thought I'd
>> > emulate the libwpd API to make it easy to implement support for Works.
>>
>> Very wise approach :-) It goes in line with Will's vision from this
>> e-mail
>> http://lists.ximian.com/pipermail/openoffice/2004-October/000556.html
>> and with an approach that I was trying to urge the OOo Google SoC
>> mentors to consider
>> http://sw.openoffice.org/servlets/ReadMsg?list=dev&msgNo=1241
>> Unfortunatelly, due to a low number of slots allocated to OOo, none of
>> the "Text importer" projects went through for SoC 2006, as you may know
>> :-( So, I am glad to see you in the "Text importer" universe again ;-)
>>
>> > Then, it was necessary or convenient to copy and paste libwpd's source
>> > code.  Now, I'm seeing there is a lot of copying, pasting, and 
>> renaming
>> > strings like "WP" to "WPS."  To avoid forking what has turned out 
>> to be
>> > an increasing amount of  code, any thoughts on consolidating efforts?
>>
>> Yes, copy&paste == evil. Andrew, quick look at our API would suggest
>> following: Do not copy anything. Just for the time being make depend the
>> libwps on classes from libwpd public headers (WPXProperty* family
>> classes, WPXString, WPXHLListenerImpl (and eventually WPXInputStream)
>> interface class(es),...). It is quite possible that one could extract
>> the framework for the next ABI breakage from the libwpd-0.8.so into a
>> separage libwpd-framework-0.9.so, but as far as I am concerned, my todo
>> list is still long enough and the libwpd API is written in written in
>> stone for at least 1 year more. I have some ideas for API changes for
>> next release cycle of libwpd (like removing completely the libgsf
>> dependency from the provided stream implementation, some changes
>> concerning the page spans and adding callbacks for embedded objects...)
>> but I do not want to touch the API as long as I have still non-breaking
>> changes in my todo list.
>
> I think Fridrich is on the right track here. Basing a filter off of
> the WPX* framework would allow you to abstract away much of the
> low-level ugliness of the .OOT format, and would potentially pave the
> way towards sharing the work with KWord and AbiWord as well.
>
> Being able to create a document as follows:
>
> m_listenerImpl->startDocument();
> m_listenerImpl->openPageSpan(..);
> m_listenerImpl->openSection(..);
> m_listenerImpl->openParagaph(..);
> m_listenerImpl->openSpan(..);
> m_listenerImpl->insertText(..);
> ..
>
> .. beats writing out a whole bunch of XML by hand, IMO. 
Yes.  It would save me and others effort to use the existing framework.
> Of course,
> there is the problem of figuring out how to properly factor all this
> into a seperate library (libtextdocumentfilter?), which I don't really
> have time to describe in detail right now. If people are really
> interested in going in this direction, I could write a specification
> on how I envision this working. Be warned: implementing the
> specification would probably be a fair amount of work. :)
Is this labor-intensive factoring actually required to start the Works 
filter?  By building Works on top of libwpd, my goal was to save "a fair 
amount of work." :)  Also, you could keep the existing name "libwpd" by 
just redefining "wpd" to mean "word processor document." 


Andrew

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Libwpd-devel mailing list
Libwpd-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libwpd-devel

Reply via email to