[sword-devel] Introducing BibleMemorizer

Troy A. Griffitts scribe at crosswire.org
Fri Mar 25 12:36:27 MST 2005


Jeremy,
	No need to include me in the copyright notice.  Consider my 
contributions, past and future, 'contributed ownership'.

	Yeah, I figured you'd want to move some stuff around.  I saw your 
concept of a Verse class, but didn't spend the time to understand how 
you were using it.

	Books can be obtained from VerseKey with something like:

	for (VerseKey vk = TOP; !vk.Error(); vk.Book(vk.Book()+1)) {
		cout << vk.getBookName() << endl;
	}


vk.getBookAbbrev(); is also available if you'd like a shorter book name.

	-Troy.

PS.  In some future release of SWORD, the plan is for a VerseKey 
obtained from a specific SWModule to give book names specific to that 
SWModule (e.g. Bible's which include Apocryphal books will expose those 
in their VerseKey object.)





Jeremy Erickson wrote:
> Thanks, Troy, for the patch.  It basically works.  With a few modifications 
> (like organization) I can use it in the next release of BibleMemorizer.  I 
> think I'll just have one "library" object declared within MainAct, and pass 
> pointers to both the Verse and VerseAct objects.  I was going to put the code 
> to do the lookup in the Verse class, but that is simple cut and paste.  And I 
> will add spaces between verses on range lookups.  Also, the reason the button 
> was disabled was so that it would only be enabled if the reference was valid.  
> If someone tried to look up "Gensis 1:3" (misspelled intentionally by me), or 
> an actual verse in a translation not in Sword, it would be disabled.  Again, 
> though, that is a trivial fix.  I was planning to make the Book field contain 
> the books from Sword, if they were available.  I saw an array with those 
> values when I was browsing the Sword headers once...
> 
> BTW, I installed Sword with "emerge bibletime" on Gentoo, which pulled in 
> Sword as a dependency.  Gentoo does not separate headers into "-devel" 
> packages and always uses "make install" behind the scenes.  I just had to 
> remove the references in the project file to libraries beyond the basic Sword 
> one; otherwise the compiler gave me errors.  Do all these libraries need to 
> be included in the project file for end users?
> 
> Here's the top I will use for the files:
> 
> /*
>  * Copyright (c) 2005 Jeremy Erickson, Troy Griffitts
>  * All rights reserved.
>  *
>  * Redistribution and use in source and binary forms, with or without
>  * modification, are permitted provided that the following conditions
>  * are met:
>  *
>  * 1. Redistributions of source code must retain the above copyright
>  *    notice, this list of conditions and the following disclaimer.
>  * 2. Redistributions in binary form must reproduce the above copyright
>  *    notice, this list of conditions and the following disclaimer in the
>  *    documentation and/or other materials provided with the distribution.
>  *
>  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
>  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
>  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
>  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
>  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
>  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
>  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
>  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
>  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
>  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
>  */
> 
> /*
>  * This software currently contains code which uses libraries under the GNU
>  * General Public License.  One such library is the Sword library
>  * (http://www.crosswire.org/sword).  Code from Sword is currently within
>  * #ifdef USE_SWORD blocks.  Use of this code, whether it remains in #ifdef
>  * blocks or not, requires acceptance of the applicable version of the GPL.
>  * Version 2, which is currently used by Sword, is reproduced in the file
>  * COPYING. Check the Sword licensing terms for the current version.
>  *
>  * The Qt library may also be available for your platform only under the
>  * GPL.  In this case, you also must accept the applicable version of the
>  * GPL.  If it is available under the QPL or another BSD-compatible license
>  * (including a commercial license, if you have purchased one) then this
>  * restriction does not apply (unless of course you're using Sword).
>  *
>  * For the purpose of clarification, any of this code may be used under the
>  * GPL instead of the above BSD-style license, and the BSD license no longer
>  * need apply, except for the disclaimer and the copyright notice.
>  */
> 
> -Jeremy Erickson
> 
> (Still haven't had a message I could just reply to, that's why this is still 
> top-level...)
> _______________________________________________
> sword-devel mailing list: sword-devel at crosswire.org
> http://www.crosswire.org/mailman/listinfo/sword-devel
> Instructions to unsubscribe/change your settings at above page



More information about the sword-devel mailing list