diff options
author | Roberto C. Sanchez <roberto@connexer.com> | 2014-03-29 10:53:49 -0400 |
---|---|---|
committer | Roberto C. Sanchez <roberto@connexer.com> | 2014-03-29 10:53:49 -0400 |
commit | 8c8aa6b07e595cfac56838b5964ab3e96051f1b2 (patch) | |
tree | da38e2c1979148dbd3b0c7b87f930746f5ba7f44 /src/modules/texts/swtext.cpp | |
parent | 8d3fc864d094eeadc721f8e93436b37a5fab173e (diff) |
Imported Upstream version 1.5.7
Diffstat (limited to 'src/modules/texts/swtext.cpp')
-rw-r--r-- | src/modules/texts/swtext.cpp | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/modules/texts/swtext.cpp b/src/modules/texts/swtext.cpp index 85da8a3..8610dae 100644 --- a/src/modules/texts/swtext.cpp +++ b/src/modules/texts/swtext.cpp @@ -5,6 +5,7 @@ #include <swtext.h> #include <listkey.h> +SWORD_NAMESPACE_START /****************************************************************************** * SWText Constructor - Initializes data for instance of SWText @@ -18,6 +19,7 @@ SWText::SWText(const char *imodname, const char *imoddesc, SWDisplay *idisp, SWT { delete key; key = CreateKey(); + skipConsecutiveLinks = false; } @@ -37,3 +39,43 @@ SWKey *SWText::CreateKey() { return new VerseKey(); } + + +long SWText::Index() const { + VerseKey *key = 0; + try { + key = SWDYNAMIC_CAST(VerseKey, this->key); + } + catch ( ... ) {} + if (!key) + key = new VerseKey(this->key); + + entryIndex = key->NewIndex(); + + if (key != this->key) + delete key; + + return entryIndex; +} + +long SWText::Index(long iindex) { + VerseKey *key = 0; + try { + key = SWDYNAMIC_CAST(VerseKey, this->key); + } + catch ( ... ) {} + if (!key) + key = new VerseKey(this->key); + + key->Testament(1); + key->Index(iindex); + + if (key != this->key) { + this->key->copyFrom(*key); + delete key; + } + + return Index(); +} + +SWORD_NAMESPACE_END |