Re: Brewing a new backend


Subject: Re: Brewing a new backend
From: Jesper Skov (jskov@redhat.com)
Date: Tue Dec 26 2000 - 16:29:41 CST


>>>>> "Martin" == Martin Sevior <msevior@mccubbin.ph.unimelb.edu.au> writes:

Martin> This is a major shift for us. I have some questions I'll ask

Hm, I just want to make clear: What I suggest is more of a restructure
of the existing code (controller/views) and cleaning up some issues
(zero-length-runs) rather than a full rewrite from scratch.

Martin> at appropriate places in this email. You realize of course
Martin> that there will be major changes and additions to
Martin> text/fmt/xp/* as we finalize version 1.0. You'll have to
Martin> track these of course. On the other hand if you're going to

Again, it'll be mostly code movement rather than actual changes.
Maybe it would be worth using a branch after all - that would take
care of your concern over new options and allow piecemeal merging back
to the trunk.

My goal is to get something that can be used. I'm not interested in
maintaining a glorified set of sources just for the sake of merging
stuff back and forth until some unknown point in the future when they
can be merged. I do enough of that with Linux sources already.

When I (we) have a better idea of what should be changed and to what,
we may be able to plan it in a way so we can bring in
features/rewrites one at a time and let those stabilize on the trunk.

Actually, I'm not even sure what the future timeline of AbiWord
is. Presumably 0.7.12 will be followed by 0.9 and shortly by 1.0, or
what? If at all possible, I'd like to be done with this before 1.0
since I find it too easy to crash AbiWord - IMO the current random
crashes in the text code should be fixed before 1.0. But the timeline
may not allow an early adoption of this stuff...

Martin> this level trouble we should also make sure Abi's current
Martin> formatting deficiencies can be addressed by your new code.

It would be good to get a full list of those deficiencies. As well as
things like you had at the end : background images, shapes embedded in
text and tables.

What about embedding stuff from gnumeric (and equivalents)?

>> o Split existing view code into view and controller code.

Martin> You need to merge in all the code from pd_Document.cpp. This
Martin> class is more effectively the controller in Abi than the
Martin> fv_View. The view class is more like a convience wrapper
Martin> around the pd_Document which connects the curently active view
Martin> to the controller. Did you see the email I sent Mike Nordell
Martin> and the list explaining my understanding of how abi works?

I'll go look for it.

For avoidance of doubt: what I'll do before anything else is getting a
proper documentation of the existing implementation in place. I can't
rewrite/reorg something I don't understand properly.

>> o Fix fake-run/findPointCoords mess by introducing EOL/EOD runs.
>>
Martin> On your way could you finish show paragraphs by showing the
Martin> funky backward P's at paragraph breaks?

Yes, that would be part of this fix.

Hmmm.... OK, here's the conclusion I just got to:

 o I want to start documenting the backend.

 o I want to fix the fake-run/findPointCoords mess. It has limited
   impact and I can probably get away with doing that for fun :)

 o We need a detailed battle plan for changes needed in the backend to
   fix known bugs, take care of known limitations, and allow further
   enhancements.

   This one is the big'un. I shouldn't have mixed it in with the
   minor stuff I wanted to do (which is documentation and a
   bug/robustness fix).

   What I'll do is start to put together a list of stuff we need to
   do, implementation suggestions, etc. And we'll take it from there
   and see how it plays out. Definitely a long term project.

   But I'm anxious to see it get off the ground - which is why I made
   the initial posting, and why I'll try to put something
   together. I'm just happy that people took the bait - shows that
   I'm not the only one seeing a problem here.

Sorry for being overly vague in my initial posting. But I least I got
some feedback :)

Thanks,
Jesper



This archive was generated by hypermail 2b25 : Tue Dec 26 2000 - 16:29:45 CST