#include <swkey.h>
Inheritance diagram for SWKey:
Public Methods | |
SWKey (const char *ikey=0) | |
initializes instance of SWKey. More... | |
SWKey (SWKey const &k) | |
Copy Constructor. More... | |
virtual | ~SWKey () |
Destructor, cleans up this instance of SWKey. | |
virtual SWKey * | clone () const |
Returns a copy of this SWKey object. More... | |
char | Persist () const |
Gets whether this object itself persists within a module that it was used to SetKey or just a copy. More... | |
char | Persist (signed char ikey) |
Set/gets whether this object itself persists within a module that it was used to SetKey or just a copy. More... | |
virtual char | Error () |
Gets and clears error status. More... | |
virtual void | setText (const char *ikey) |
Equates this SWKey to a character string. More... | |
virtual void | copyFrom (const SWKey &ikey) |
Equates this SWKey to another SWKey object. More... | |
virtual const char * | getText () const |
returns text key if (char *) cast is requested. | |
virtual int | compare (const SWKey &ikey) |
Compares another VerseKey object. More... | |
virtual bool | equals (const SWKey &ikey) |
Compares another VerseKey object. More... | |
virtual void | setPosition (SW_POSITION) |
virtual void | decrement (int steps=1) |
Decrements key a number of entries. More... | |
virtual void | increment (int steps=1) |
Increments key a number of entries. More... | |
virtual char | Traversable () |
virtual long | Index () const |
Use this function to get te current position withing a module. More... | |
virtual long | Index (long iindex) |
Protected Attributes | |
char * | keytext |
char | persist |
char | error |
Private Methods | |
void | init () |
Private Attributes | |
long | index |
Static Private Attributes | |
SWClass | classdef |
verse, word, place, etc.)
Definition at line 76 of file swkey.h.
|
initializes instance of SWKey.
Definition at line 20 of file swkey.cpp. Referenced by clone.
00021 { 00022 index = 0; 00023 persist = 0; 00024 keytext = 0; 00025 error = 0; 00026 stdstr(&keytext, ikey); 00027 init(); 00028 } |
|
Copy Constructor.
Definition at line 30 of file swkey.cpp. References error, index, keytext, and persist.
00031 { 00032 index = k.index; 00033 persist = k.persist; 00034 keytext = 0; 00035 error = k.error; 00036 stdstr(&keytext, k.keytext); 00037 init(); 00038 } |
|
Returns a copy of this SWKey object. This is useful to get a 1:1 copy of an SWKey based object.
Reimplemented in ListKey. Definition at line 44 of file swkey.cpp. References SWKey. Referenced by ListKey::copyFrom, and SWModule::Search.
00045 { 00046 return new SWKey(*this); 00047 } |
|
Compares another VerseKey object.
Reimplemented in TreeKey. Definition at line 150 of file swkey.cpp. Referenced by TreeKeyIdx::compare.
00151 { 00152 return strcmp((const char *)*this, (const char *)ikey); 00153 } |
|
Equates this SWKey to another SWKey object.
Reimplemented in ListKey. Definition at line 125 of file swkey.cpp. References setText. Referenced by VerseKey::copyFrom, TreeKeyIdx::copyFrom, and ListKey::copyFrom.
00125 { 00126 // not desirable Persist(ikey.Persist()); 00127 setText((const char *)ikey); 00128 } |
|
Decrements key a number of entries.
Reimplemented in ListKey. Definition at line 193 of file swkey.cpp.
00193 { 00194 error = KEYERR_OUTOFBOUNDS; 00195 } |
|
Compares another VerseKey object.
Definition at line 163 of file swkey.h.
00163 { return !compare(ikey); } |
|
Gets and clears error status.
Definition at line 99 of file swkey.cpp. Referenced by VerseKey::decrement, ListKey::decrement, VerseKey::increment, ListKey::increment, SWModule::operator+=, SWModule::operator-=, SWModule::operator=, VerseKey::setPosition, and TreeKeyIdx::setText.
00100 { 00101 char retval = error; 00102 00103 error = 0; 00104 return retval; 00105 } |
|
Increments key a number of entries.
Reimplemented in ListKey. Definition at line 180 of file swkey.cpp.
00180 { 00181 error = KEYERR_OUTOFBOUNDS; 00182 } |
|
Use this function to get te current position withing a module. Here's a small example how to use this function and Index(long). This function uses the GerLut module and chooses a random verse from the Bible and returns it. const char* randomVerse() { VerseKey vk; SWMgr mgr; LocaleMgr::systemLocaleMgr.setDefaultLocaleName("de"); SWModule* module = mgr->Modules("GerLut"); srand( time(0) ); const double newIndex = (double(rand())/RAND_MAX)*(24108+8224); vk.Index(newIndex); module->SetKey(vk); char* text; sprintf(text, "%s: %s",(const char*)vk ,module->StripText(&vk)); return text; Reimplemented in ListKey. Definition at line 204 of file swkey.h. Referenced by ListKey::Index, and SWModule::Search.
00204 { return index; } |
|
Set/gets whether this object itself persists within a module that it was used to SetKey or just a copy. (1 - persists in module; 0 - a copy is attempted
Definition at line 84 of file swkey.cpp.
00085 { 00086 if (ipersist != -1) 00087 persist = ipersist; 00088 00089 return persist; 00090 } |
|
Gets whether this object itself persists within a module that it was used to SetKey or just a copy. (1 - persists in module; 0 - a copy is attempted
Definition at line 67 of file swkey.cpp. Referenced by SWLD::KeyText, SWModule::RenderText, SWModule::Search, SWModule::SetKey, SWModule::StripText, and SWModule::~SWModule.
00068 { 00069 return persist; 00070 } |
|
Equates this SWKey to a character string.
Reimplemented in TreeKey. Definition at line 114 of file swkey.cpp. Referenced by copyFrom, VerseKey::parse, and VerseKey::setText.
00114 { 00115 stdstr(&keytext, ikey); 00116 } |