38 static const char oName[] =
"Footnotes";
39 static const char oTip[] =
"Toggles Footnotes On and Off if they exist";
43 static const StringList oVals(&choices[0], &choices[2]);
75 const char *from = orig.
c_str();
78 bool strongsMarkup =
false;
81 for (text =
""; *from; ++from) {
84 if ((*from == 10) || (*from == 13)) {
85 if ((text.
length()>1) && (text[text.
length()-2] !=
' ') && (*(from+1) !=
' '))
101 if (!strncmp(token,
"note", 4) || !strncmp(token.
c_str(),
"/note", 5)) {
109 strongsMarkup =
true;
123 sprintf(buf,
"%i", footnoteNum++);
125 for (StringList::const_iterator it = attributes.begin(); it != attributes.end(); it++) {
143 strongsMarkup =
false;
149 if (!strncmp(token,
"reference", 9)) {
154 const char* attr = strstr(token.
c_str() + 9,
"osisRef=\"");
155 const char* end = attr ? strchr(attr+9,
'"') : 0;
158 refs.
append(attr+9, end-(attr+9));
179 else tagText.
append(*from);
#define SWORD_NAMESPACE_START
unsigned long length() const
void setEmpty(bool value)
const char * setAttribute(const char *attribName, const char *attribValue, int partNum=-1, char partSplit= '|')
static const StringList * oValues()
virtual SWKey * clone() const
virtual const char * getText() const
const StringList getAttributeNames() const
const char * c_str() const
std::list< SWBuf > StringList
SWBuf & append(const char *str, long max=-1)
static const char oName[]
virtual ListKey parseVerseList(const char *buf, const char *defaultKey=0, bool expandRange=false, bool useChapterAsVerse=false)
#define SWDYNAMIC_CAST(className, object)
virtual bool isProcessEntryAttributes() const
virtual AttributeTypeList & getEntryAttributes() const
static const char * choices[4]
const char * getAttribute(const char *attribName, int partNum=-1, char partSplit= '|') const
bool isEndTag(const char *eID=0) const
#define SWORD_NAMESPACE_END
virtual SWKey * createKey() const