[jsword-devel] Sword drivers
Joe Walker
jsword-devel@crosswire.org
Wed, 16 Oct 2002 19:16:06 +0100
Hi,
Mark Goodwin wrote:
>Hello people.
>
>Plain text Sword drivers are now working.
>
>
Woo Woo. Fantastic. Good work.
I'm just syncing with your code. I noticed one problem that you've
obviously thought "I wonder if there is already a solution to this"; And
there is.
You coded words to the effect:
// TODO: perhaps should un-hardcode that -39?
... getText(TESTAMENT_NEW, bookNo-39, ...
So I changed it to:
... getText(TESTAMENT_NEW, bookNo - Books.Names.Malachi, ...
I knew there was some reason for me writing that code ...
>The old Sword drivers, although very elegant were very broken (so
>broken, in fact that I suspect the Sword module format must have
>changed). Rather than figure out why, I just re-implemented the file
>position calculation stuff using LUTs shamelessly stolen from cannon.h
>in Sword (thanks Troy!).
>
I'm sure it worked once. Although it was a loooong time ago.
>It's worked fine with every Bible I've tried so far, but please note any
>Bible that contains non plain text (i.e. marginal notes / Strong's
>references) will just display the additional data as if it was part of
>the Bible. This can be fixed later (perhaps by someone who knows what
>this markup means).
>
>
This is a big question - separate mail ...
>I had to make some changes to ensure Configs are created and loaded
>before the SDI displays to ensure BibleDrivers were correctly configured
>before they were used. I've not yet replaced the splash.setProgress
>stuff because there was lots of work involved, and the configs seem to
>create and load quickly. If people think this needs doing I'll go over
>all the code in Desktop.java changing numbers...
>
>
The idea is that BibleDriver et al. give you a dynamic view of what
Bibles are available, so there is a BiblesListener etc. and the
BiblesComboBoxModel *should* listen. I suspect that it doesn't however ...
Joe.