[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