Details
-
Type:
Bug
-
Status: Closed (View Workflow)
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: 2.0
-
Component/s: book display
-
Labels:None
Description
Install and select "Net Bible Maps" or "Maps by Epiphany Software" module in BD.
Observe that the section of the sidebar which usually displays a table of contents (either a list or a tree) remains empty, without which you cannot do anything with these modules.
Note: ftp://ftp.kleinpaste.org/pub/sword/zip/ has netmaps.zip and epiphany-maps.zip used for this test.
I've fixed this and tested the mentioned modules. There were a couple of bugs:
1) The display code assumed MAPS were GenBooks. There were several possible solutions:
a) have BD see if the Book was an instanceof SwordDictionary. This approach had the disadvantage of being the first and only place that BD knew about SWORD modules.
b) Make the tree also handle lists. That is let a list be a tree of depth = 1. The problem with this is that the optimization that was applied to large dictionaries would have to be applied to gen books. While this is probably a good idea, it was not a simple idea.
c) Expose whether the book presents it's keys as verses, as a list or as a tree.
I chose c), implementing KeyType.
2) If the module didn't have an entry it would throw an exception. In one of the modules, there was no 0 entry. Such an entry now returns a usable value.