Heya all,

Been looking a headers in PocketSword and trying to get them to work for an 
Irish module.  Then discovered that the LEB has been released to the main 
CrossWire repo & has the same headings issue.

After discussing it with Karl & Greg on IRC, I've found the issue & given my 
lack of understanding of lots of stuff to do with filters, I've hacked a 
solution rather than rewrite things nicely............

The "hack" bit of it means that for ABN & LEB, both the interverse & preverse 
headings will be set.  So, in PocketSword I simply check for a pre-verse 
heading.  If it is !null I display it.  & if it's !null, I then don't display 
an interverse heading.  However, this doesn't happen for the ESV - it will only 
set the appropriate heading (either interverse or preverse).  So, if this patch 
is applied and frontends don't take it into account, the worst that will happen 
is that for the LEB & ABN & other such modules, there will be double headings, 
whereas for the ESV, it will still work fine.  :)
Yes, this isn't a correct way of fixing this but it appears to work for both 
the LEB & ESV modules.  :D
It may need some more testing for interverse headings, as I believe they don't 
appear that often in the ESV & so it's hard to stress test it.  :)

change is for osisheadings.cpp:
@@ -119,7 +119,7 @@
                                        continue;
                                }
                                if (hide && tag.isEndTag(pvDID)) {
-                                       if (module->isProcessEntryAttributes() 
&& ((option || canonical) || (!preverse))) {
+                                       if 
(/*module->isProcessEntryAttributes() nicc: fixes LEB headings &&*/ ((option || 
canonical) || (!preverse))) {
                                                if (preverse) {
                                                        sprintf(buf, "%i", 
pvHeaderNum++);
                                                        
module->getEntryAttributes()["Heading"]["Preverse"][buf] = header;

Anyway, I'm done for the day, shoot me through thoughts, comments & 
suggestions.  :)


Thanks, ybic
        nic...  :)

ps: yes, I know it's a hack.  :P

----
Nic Carter
PocketSword Developer - an iPhone Bible Study app
www: http://crosswire.org/pocketsword
iTunes: http://itunes.apple.com/app/Pocketsword/id341046078
Twitter: http://twitter.com/pocketsword


_______________________________________________
sword-devel mailing list: [email protected]
http://www.crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page

Reply via email to