diff options
Diffstat (limited to 'doc/api-documentation/html/rwphtml_8cpp-source.html')
-rw-r--r-- | doc/api-documentation/html/rwphtml_8cpp-source.html | 201 |
1 files changed, 201 insertions, 0 deletions
diff --git a/doc/api-documentation/html/rwphtml_8cpp-source.html b/doc/api-documentation/html/rwphtml_8cpp-source.html new file mode 100644 index 0000000..eca1cfd --- /dev/null +++ b/doc/api-documentation/html/rwphtml_8cpp-source.html @@ -0,0 +1,201 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> +<title>rwphtml.cpp Source File</title> +<link href="doxygen.css" rel="stylesheet" type="text/css"> +</head><body> +<!-- Generated by Doxygen 1.2.15 --> +<center> +<a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="namespaces.html">Namespace List</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="classes.html">Alphabetical List</a> <a class="qindex" href="annotated.html">Compound List</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Compound Members</a> </center> +<hr><h1>rwphtml.cpp</h1><div class="fragment"><pre>00001 <font class="comment">/***************************************************************************</font> +00002 <font class="comment"> rwphtml.cpp - description</font> +00003 <font class="comment"> -------------------</font> +00004 <font class="comment"> begin : Thu Jun 24 1999</font> +00005 <font class="comment"> copyright : (C) 1999 by Torsten Uhlmann</font> +00006 <font class="comment"> email : TUhlmann@gmx.de</font> +00007 <font class="comment"> ***************************************************************************/</font> +00008 +00009 <font class="comment">/***************************************************************************</font> +00010 <font class="comment"> * *</font> +00011 <font class="comment"> * This program is free software; you can redistribute it and/or modify *</font> +00012 <font class="comment"> * it under the terms of the GNU General Public License as published by *</font> +00013 <font class="comment"> * the Free Software Foundation; either version 2 of the License, or *</font> +00014 <font class="comment"> * (at your option) any later version. *</font> +00015 <font class="comment"> * *</font> +00016 <font class="comment"> ***************************************************************************/</font> +00017 +00018 <font class="preprocessor">#include <stdlib.h></font> +00019 <font class="preprocessor">#include <string.h></font> +00020 <font class="preprocessor">#include <ctype.h></font> +00021 <font class="preprocessor">#include <rwphtml.h></font> +00022 +00023 RWPHTML::RWPHTML() +00024 { +00025 } +00026 +00027 +00028 <font class="keywordtype">char</font> RWPHTML::ProcessText(<font class="keywordtype">char</font> *text, <font class="keywordtype">int</font> maxlen, <font class="keyword">const</font> <a class="code" href="class_s_w_key.html">SWKey</a> *key, <font class="keyword">const</font> <a class="code" href="class_s_w_module.html">SWModule</a> *module) +00029 { +00030 <font class="keywordtype">char</font> *to, *from; +00031 <font class="keywordtype">signed</font> <font class="keywordtype">char</font> greek_str[500]; +00032 <font class="keywordtype">bool</font> inverse = <font class="keyword">false</font>; +00033 <font class="keywordtype">bool</font> first_letter = <font class="keyword">false</font>; +00034 <font class="keywordtype">int</font> len; +00035 +00036 len = strlen(text) + 1; <font class="comment">// shift string to right of buffer</font> +00037 <font class="keywordflow">if</font> (len < maxlen) { +00038 memmove(&text[maxlen - len], text, len); +00039 from = &text[maxlen - len]; +00040 } <font class="keywordflow">else</font> +00041 from = text; +00042 <font class="keywordflow">for</font> (to = text; *from; from++) { +00043 <font class="keywordflow">if</font> (*from == <font class="charliteral">'\\'</font>) { +00044 ++from; +00045 <font class="keywordtype">int</font> i=0; +00046 first_letter = <font class="keyword">true</font>; +00047 greek_str[0] = <font class="charliteral">'\0'</font>; +00048 <font class="keywordflow">while</font> (*from != <font class="charliteral">'\\'</font>) { <font class="comment">/* get the greek word or phrase */</font> +00049 greek_str[i++] = *from; +00050 greek_str[i + 1] = <font class="charliteral">'\0'</font>; +00051 from++; +00052 } <font class="comment">/* convert to symbol font as best we can */</font> +00053 strcpy(to,<font class="stringliteral">"<I> </I><FONT FACE=\"symbol\">"</font>); +00054 to += strlen(to); +00055 <font class="keywordflow">for</font> (<font class="keywordtype">int</font> j = 0; j < i; j++) { +00056 <font class="keywordflow">if</font> ((first_letter) +00057 && (greek_str[j] == <font class="charliteral">'h'</font>)) { +00058 <font class="keywordflow">if</font> (greek_str[j + 1] == <font class="charliteral">'o'</font>) { +00059 *to++ = <font class="charliteral">'o'</font>; +00060 first_letter = <font class="keyword">false</font>; +00061 ++j; +00062 <font class="keywordflow">continue</font>; +00063 } <font class="keywordflow">else</font> <font class="keywordflow">if</font> (greek_str[j + 1] == <font class="charliteral">'a'</font>) { +00064 *to++ = <font class="charliteral">'a'</font>; +00065 first_letter = <font class="keyword">false</font>; +00066 ++j; +00067 <font class="keywordflow">continue</font>; +00068 } <font class="keywordflow">else</font> <font class="keywordflow">if</font> (greek_str[j + 1] == <font class="charliteral">'w'</font>) { +00069 *to++ = <font class="charliteral">'w'</font>; +00070 first_letter = <font class="keyword">false</font>; +00071 ++j; +00072 <font class="keywordflow">continue</font>; +00073 } <font class="keywordflow">else</font> <font class="keywordflow">if</font> (greek_str[j + 1] == <font class="charliteral">'u'</font>) { +00074 *to++ = <font class="charliteral">'u'</font>; +00075 first_letter = <font class="keyword">false</font>; +00076 ++j; +00077 <font class="keywordflow">continue</font>; +00078 } <font class="keywordflow">else</font> <font class="keywordflow">if</font> (greek_str[j + 1] == +00079 -109) { +00080 *to++ = <font class="charliteral">'w'</font>; +00081 first_letter = <font class="keyword">false</font>; +00082 ++j; +00083 <font class="keywordflow">continue</font>; +00084 } <font class="keywordflow">else</font> <font class="keywordflow">if</font> (greek_str[j + 1] == +00085 -120) { +00086 *to++ = <font class="charliteral">'h'</font>; +00087 first_letter = <font class="keyword">false</font>; +00088 ++j; +00089 <font class="keywordflow">continue</font>; +00090 } <font class="keywordflow">else</font> <font class="keywordflow">if</font> (greek_str[j + 1] == <font class="charliteral">'i'</font>) { +00091 *to++ = <font class="charliteral">'i'</font>; +00092 first_letter = <font class="keyword">false</font>; +00093 ++j; +00094 <font class="keywordflow">continue</font>; +00095 }<font class="keywordflow">else</font> <font class="keywordflow">if</font> (greek_str[j + 1] == <font class="charliteral">'e'</font>) { +00096 *to++ = <font class="charliteral">'e'</font>; +00097 first_letter = <font class="keyword">false</font>; +00098 ++j; +00099 <font class="keywordflow">continue</font>; +00100 } +00101 first_letter = <font class="keyword">false</font>; +00102 } +00103 <font class="keywordflow">if</font> ((greek_str[j] == <font class="charliteral">'t'</font>) +00104 && (greek_str[j + 1] == <font class="charliteral">'h'</font>)) { +00105 *to++ = <font class="charliteral">'q'</font>; +00106 ++j; +00107 <font class="keywordflow">continue</font>; +00108 } +00109 <font class="keywordflow">if</font> ((greek_str[j] == <font class="charliteral">'c'</font>) +00110 && (greek_str[j + 1] == <font class="charliteral">'h'</font>)) { +00111 *to++ = <font class="charliteral">'c'</font>; +00112 ++j; +00113 <font class="keywordflow">continue</font>; +00114 } +00115 <font class="keywordflow">if</font> ((greek_str[j] == <font class="charliteral">'p'</font>) +00116 && (greek_str[j + 1] == <font class="charliteral">'h'</font>)) { +00117 ++j; +00118 *to++ = <font class="charliteral">'f'</font>; +00119 <font class="keywordflow">continue</font>; +00120 } +00121 <font class="keywordflow">if</font> (greek_str[j] == -120) { +00122 *to++ = <font class="charliteral">'h'</font>; +00123 <font class="keywordflow">continue</font>; +00124 } +00125 <font class="keywordflow">if</font> (greek_str[j] == -125) { +00126 *to++ = <font class="charliteral">'a'</font>; +00127 <font class="keywordflow">continue</font>; +00128 } +00129 <font class="keywordflow">if</font> (greek_str[j] == -109) { +00130 <font class="keywordflow">if</font>(greek_str[j+1] == <font class="charliteral">'i'</font>) ++j; +00131 *to++ = <font class="charliteral">'w'</font>; +00132 <font class="keywordflow">continue</font>; +00133 } +00134 <font class="keywordflow">if</font> (greek_str[j] == <font class="charliteral">' '</font>) +00135 first_letter = <font class="keyword">true</font>; +00136 <font class="keywordflow">if</font> (greek_str[j] == <font class="charliteral">'s'</font>) { +00137 <font class="keywordflow">if</font>(isalpha(greek_str[j + 1])) *to++ = <font class="charliteral">'s'</font>; +00138 <font class="keywordflow">else</font> <font class="keywordflow">if</font>(!isprint(greek_str[j] )) *to++ = <font class="charliteral">'s'</font>; +00139 <font class="keywordflow">else</font> *to++ = <font class="charliteral">'V'</font>; +00140 <font class="keywordflow">continue</font>; +00141 } +00142 <font class="keywordflow">if</font> (greek_str[j] == <font class="charliteral">'\''</font>) { +00143 <font class="keywordflow">continue</font>; +00144 } +00145 *to++ = greek_str[j]; +00146 } +00147 strcpy(to,<font class="stringliteral">"</FONT><I> </I>"</font>); +00148 to += strlen(to); +00149 <font class="keywordflow">continue</font>; +00150 } +00151 <font class="keywordflow">if</font> (*from == <font class="charliteral">'#'</font>) { <font class="comment">// verse markings (e.g. "#Mark 1:1|")</font> +00152 inverse = <font class="keyword">true</font>; +00153 strcpy(to,<font class="stringliteral">"<FONT COLOR=#0000FF>"</font>); +00154 to += strlen(to); +00155 <font class="keywordflow">continue</font>; +00156 } +00157 <font class="keywordflow">if</font> ((*from == <font class="charliteral">'|'</font>) && (inverse)) { +00158 inverse = <font class="keyword">false</font>; +00159 strcpy(to,<font class="stringliteral">"</FONT>"</font>); +00160 to += strlen(to); +00161 <font class="keywordflow">continue</font>; +00162 } +00163 <font class="keywordflow">if</font> (*from == <font class="charliteral">'{'</font>) { +00164 strcpy(to,<font class="stringliteral">"<BR><STRONG>"</font>); +00165 to += strlen(to); +00166 <font class="keywordflow">if</font> ((from - &text[maxlen - len]) > 10) { <font class="comment">// not the beginning of the entry</font> +00167 strcpy(to,<font class="stringliteral">"<P>"</font>); +00168 to += strlen(to); +00169 } +00170 <font class="keywordflow">continue</font>; +00171 } +00172 <font class="keywordflow">if</font> (*from == <font class="charliteral">'}'</font>) { +00173 strcpy(to,<font class="stringliteral">" </STRONG>"</font>); +00174 to += strlen(to); +00175 <font class="keywordflow">continue</font>; +00176 } +00177 <font class="keywordflow">if</font> ((*from == <font class="charliteral">'\n'</font>) && (from[1] == <font class="charliteral">'\n'</font>)) { +00178 strcpy(to,<font class="stringliteral">"<P>"</font>); +00179 to += strlen(to); +00180 <font class="keywordflow">continue</font>; +00181 } +00182 *to++ = *from; +00183 } +00184 *to++ = 0; +00185 *to = 0; +00186 <font class="keywordflow">return</font> 0; +00187 } +</pre></div><hr><address align="right"><small>Generated on Thu Jun 20 22:13:00 2002 for The Sword Project by +<a href="http://www.doxygen.org/index.html"> +<img src="doxygen.png" alt="doxygen" align="middle" border=0 +width=110 height=53></a>1.2.15 </small></address> +</body> +</html> |