848 lines
202 KiB
HTML
848 lines
202 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
|
<html>
|
|
<head>
|
|
<title>HTML</title>
|
|
<link href="../docs-assets/Breadcrumbs.css" rel="stylesheet" rev="stylesheet" type="text/css">
|
|
<meta name="viewport" content="width=device-width initial-scale=1">
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
|
<meta http-equiv="Content-Language" content="en-gb">
|
|
|
|
<link href="../docs-assets/Contents.css" rel="stylesheet" rev="stylesheet" type="text/css">
|
|
<link href="../docs-assets/Progress.css" rel="stylesheet" rev="stylesheet" type="text/css">
|
|
<link href="../docs-assets/Navigation.css" rel="stylesheet" rev="stylesheet" type="text/css">
|
|
<link href="../docs-assets/Fonts.css" rel="stylesheet" rev="stylesheet" type="text/css">
|
|
<link href="../docs-assets/Base.css" rel="stylesheet" rev="stylesheet" type="text/css">
|
|
<script>
|
|
function togglePopup(material_id) {
|
|
var popup = document.getElementById(material_id);
|
|
popup.classList.toggle("show");
|
|
}
|
|
</script>
|
|
|
|
<link href="../docs-assets/Popups.css" rel="stylesheet" rev="stylesheet" type="text/css">
|
|
<link href="../docs-assets/Colours.css" rel="stylesheet" rev="stylesheet" type="text/css">
|
|
|
|
</head>
|
|
<body class="commentary-font">
|
|
<nav role="navigation">
|
|
<h1><a href="../index.html">
|
|
<img src="../docs-assets/Octagram.png" width=72 height=72">
|
|
</a></h1>
|
|
<ul><li><a href="../inweb/index.html">inweb</a></li>
|
|
</ul><h2>Foundation Module</h2><ul>
|
|
<li><a href="index.html"><span class="selectedlink">foundation</span></a></li>
|
|
<li><a href="../foundation-test/index.html">foundation-test</a></li>
|
|
</ul><h2>Example Webs</h2><ul>
|
|
<li><a href="../goldbach/index.html">goldbach</a></li>
|
|
<li><a href="../twinprimes/twinprimes.html">twinprimes</a></li>
|
|
<li><a href="../eastertide/index.html">eastertide</a></li>
|
|
</ul><h2>Repository</h2><ul>
|
|
<li><a href="https://github.com/ganelson/inweb"><img src="../docs-assets/github.png" height=18> github</a></li>
|
|
</ul><h2>Related Projects</h2><ul>
|
|
<li><a href="../../../inform/docs/index.html">inform</a></li>
|
|
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
|
|
|
</ul>
|
|
</nav>
|
|
<main role="main">
|
|
<!--Weave of 'HTML' generated by Inweb-->
|
|
<div class="breadcrumbs">
|
|
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="index.html">foundation</a></li><li><a href="index.html#5">Chapter 5: Generating Websites</a></li><li><b>HTML</b></li></ul></div>
|
|
<p class="purpose">Utility functions for writing HTML.</p>
|
|
|
|
<ul class="toc"><li><a href="5-htm.html#SP1">§1. Abstraction</a></li><li><a href="5-htm.html#SP8">§8. Head</a></li><li><a href="5-htm.html#SP10">§10. Scripts and styles</a></li><li><a href="5-htm.html#SP12">§12. Body</a></li><li><a href="5-htm.html#SP13">§13. Divisions</a></li><li><a href="5-htm.html#SP14">§14. Images</a></li><li><a href="5-htm.html#SP15">§15. Links</a></li><li><a href="5-htm.html#SP16">§16. Tables</a></li><li><a href="5-htm.html#SP18">§18. Round-rects</a></li><li><a href="5-htm.html#SP19">§19. Miscellaneous</a></li><li><a href="5-htm.html#SP20">§20. HTML colours</a></li></ul><hr class="tocbar">
|
|
|
|
<p class="commentary firstcommentary"><a id="SP1"></a><b>§1. Abstraction. </b>Though the code below does nothing at all interesting, to put it mildly,
|
|
it's written a little defensively, to increase the chances that the client
|
|
is producing valid HTML with it. In particular, the client won't be
|
|
allowed to open a <span class="extract"><span class="extract-syntax">p</span></span> tag, then open a <span class="extract"><span class="extract-syntax">b</span></span> tag, then close the <span class="extract"><span class="extract-syntax">p</span></span>, then
|
|
close the <span class="extract"><span class="extract-syntax">b</span></span>: that would be wrongly nested. We want to throw errors like
|
|
that into the debugging log, so:
|
|
</p>
|
|
|
|
<pre class="definitions code-font"><span class="definition-keyword">define</span> <span class="identifier-syntax">tag_error</span><span class="plain-syntax">(</span><span class="identifier-syntax">x</span><span class="plain-syntax">) { </span><span class="identifier-syntax">LOG</span><span class="plain-syntax">(</span><span class="string-syntax">"Tag error: %s\n"</span><span class="plain-syntax">, </span><span class="identifier-syntax">x</span><span class="plain-syntax">); }</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP2"></a><b>§2. </b>Any text stream can be declared as being HTML, and therefore subject to
|
|
this auditing. To do that, we atach an <span class="extract"><span class="extract-syntax">HTML_file_state</span></span> object to the
|
|
text stream.
|
|
</p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">typedef</span><span class="plain-syntax"> </span><span class="reserved-syntax">struct</span><span class="plain-syntax"> </span><span class="reserved-syntax">HTML_file_state</span><span class="plain-syntax"> {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">XHTML_flag</span><span class="plain-syntax">; </span><span class="comment-syntax"> writing strict XHTML for use in epubs</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">struct</span><span class="plain-syntax"> </span><span class="constant-syntax">lifo_stack</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tag_stack</span><span class="plain-syntax">; </span><span class="comment-syntax"> of </span><span class="extract"><span class="extract-syntax">HTML_tag</span></span><span class="comment-syntax">: those currently open</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">CSS_included</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">JS_included</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="constant-syntax">CLASS_DEFINITION</span>
|
|
<span class="plain-syntax">} </span><span class="reserved-syntax">HTML_file_state</span><span class="plain-syntax">;</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::declare_as_HTML</span><button class="popup" onclick="togglePopup('usagePopup1')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup1">Usage of <span class="code-font"><span class="function-syntax">HTML::declare_as_HTML</span></span>:<br/>Epub Ebooks - <a href="5-ee.html#SP6_3">§6.3</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">XHTML</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">HTML_file_state</span><span class="plain-syntax"> *</span><span class="identifier-syntax">hs</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">HTML_file_state</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">hs</span><span class="plain-syntax">-></span><span class="element-syntax">XHTML_flag</span><span class="plain-syntax"> = </span><span class="identifier-syntax">XHTML</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">hs</span><span class="plain-syntax">-></span><span class="element-syntax">tag_stack</span><span class="plain-syntax"> = </span><span class="identifier-syntax">NEW_LIFO_STACK</span><span class="plain-syntax">(</span><span class="reserved-syntax">HTML_tag</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">hs</span><span class="plain-syntax">-></span><span class="element-syntax">CSS_included</span><span class="plain-syntax"> = </span><span class="constant-syntax">0</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">hs</span><span class="plain-syntax">-></span><span class="element-syntax">JS_included</span><span class="plain-syntax"> = </span><span class="constant-syntax">0</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><a href="2-str.html#SP20" class="function-link"><span class="function-syntax">Streams::declare_as_HTML</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">hs</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<ul class="endnotetexts"><li>The structure HTML_file_state is private to this section.</li></ul>
|
|
<p class="commentary firstcommentary"><a id="SP3"></a><b>§3. </b>What we require is that any tag "pushed" to the file must later be "pulled",
|
|
and in the right order. Thus we can't open body, open div, close body, because
|
|
that would be a div tag which was pushed but not pulled.
|
|
</p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">unique_xref</span><span class="plain-syntax"> = </span><span class="constant-syntax">0</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">typedef</span><span class="plain-syntax"> </span><span class="reserved-syntax">struct</span><span class="plain-syntax"> </span><span class="reserved-syntax">HTML_tag</span><span class="plain-syntax"> {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tag_name</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">tag_xref</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="constant-syntax">CLASS_DEFINITION</span>
|
|
<span class="plain-syntax">} </span><span class="reserved-syntax">HTML_tag</span><span class="plain-syntax">;</span>
|
|
|
|
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::push_tag</span><button class="popup" onclick="togglePopup('usagePopup2')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup2">Usage of <span class="code-font"><span class="function-syntax">HTML::push_tag</span></span>:<br/><a href="5-htm.html#SP7">§7</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tag</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">u</span><span class="plain-syntax"> = </span><span class="identifier-syntax">unique_xref</span><span class="plain-syntax">++;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">HTML_file_state</span><span class="plain-syntax"> *</span><span class="identifier-syntax">hs</span><span class="plain-syntax"> = </span><a href="2-str.html#SP20" class="function-link"><span class="function-syntax">Streams::get_HTML_file_state</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">hs</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">HTML_tag</span><span class="plain-syntax"> *</span><span class="identifier-syntax">ht</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">HTML_tag</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">ht</span><span class="plain-syntax">-></span><span class="element-syntax">tag_name</span><span class="plain-syntax"> = </span><span class="identifier-syntax">tag</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">ht</span><span class="plain-syntax">-></span><span class="element-syntax">tag_xref</span><span class="plain-syntax"> = </span><span class="identifier-syntax">u</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">PUSH_TO_LIFO_STACK</span><span class="plain-syntax">(</span><span class="identifier-syntax">ht</span><span class="plain-syntax">, </span><span class="reserved-syntax">HTML_tag</span><span class="plain-syntax">, </span><span class="identifier-syntax">hs</span><span class="plain-syntax">-></span><span class="element-syntax">tag_stack</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> }</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">u</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<ul class="endnotetexts"><li>The structure HTML_tag is accessed in 8/ws and here.</li></ul>
|
|
<p class="commentary firstcommentary"><a id="SP4"></a><b>§4. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::pop_tag</span><button class="popup" onclick="togglePopup('usagePopup3')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup3">Usage of <span class="code-font"><span class="function-syntax">HTML::pop_tag</span></span>:<br/><a href="5-htm.html#SP7">§7</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tag</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">HTML_file_state</span><span class="plain-syntax"> *</span><span class="identifier-syntax">hs</span><span class="plain-syntax"> = </span><a href="2-str.html#SP20" class="function-link"><span class="function-syntax">Streams::get_HTML_file_state</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">hs</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">LIFO_STACK_EMPTY</span><span class="plain-syntax">(</span><span class="reserved-syntax">HTML_tag</span><span class="plain-syntax">, </span><span class="identifier-syntax">hs</span><span class="plain-syntax">-></span><span class="element-syntax">tag_stack</span><span class="plain-syntax">)) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">LOG</span><span class="plain-syntax">(</span><span class="string-syntax">"{tag: %s}\n"</span><span class="plain-syntax">, </span><span class="identifier-syntax">tag</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">tag_error</span><span class="plain-syntax">(</span><span class="string-syntax">"closed HTML tag which wasn't open"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> } </span><span class="reserved-syntax">else</span><span class="plain-syntax"> {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">HTML_tag</span><span class="plain-syntax"> *</span><span class="identifier-syntax">ht</span><span class="plain-syntax"> = </span><span class="identifier-syntax">TOP_OF_LIFO_STACK</span><span class="plain-syntax">(</span><span class="reserved-syntax">HTML_tag</span><span class="plain-syntax">, </span><span class="identifier-syntax">hs</span><span class="plain-syntax">-></span><span class="element-syntax">tag_stack</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="identifier-syntax">ht</span><span class="plain-syntax">-></span><span class="element-syntax">tag_name</span><span class="plain-syntax">) != </span><span class="constant-syntax">0</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">LOG</span><span class="plain-syntax">(</span><span class="string-syntax">"{expected to close tag %s (%d), but actually closed %s}\n"</span><span class="plain-syntax">,</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">ht</span><span class="plain-syntax">-></span><span class="element-syntax">tag_name</span><span class="plain-syntax">, </span><span class="identifier-syntax">ht</span><span class="plain-syntax">-></span><span class="element-syntax">tag_xref</span><span class="plain-syntax">, </span><span class="identifier-syntax">tag</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">tag_error</span><span class="plain-syntax">(</span><span class="string-syntax">"closed HTML tag which wasn't open"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> }</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">POP_LIFO_STACK</span><span class="plain-syntax">(</span><span class="reserved-syntax">HTML_tag</span><span class="plain-syntax">, </span><span class="identifier-syntax">hs</span><span class="plain-syntax">-></span><span class="element-syntax">tag_stack</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> }</span>
|
|
<span class="plain-syntax"> }</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP5"></a><b>§5. </b>At the end, therefore, no tags must remain unpulled.
|
|
</p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::completed</span><button class="popup" onclick="togglePopup('usagePopup4')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup4">Usage of <span class="code-font"><span class="function-syntax">HTML::completed</span></span>:<br/>Epub Ebooks - <a href="5-ee.html#SP6_3">§6.3</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">HTML_file_state</span><span class="plain-syntax"> *</span><span class="identifier-syntax">hs</span><span class="plain-syntax"> = </span><a href="2-str.html#SP20" class="function-link"><span class="function-syntax">Streams::get_HTML_file_state</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><span class="identifier-syntax">hs</span><span class="plain-syntax">) && (</span><span class="identifier-syntax">LIFO_STACK_EMPTY</span><span class="plain-syntax">(</span><span class="reserved-syntax">HTML_tag</span><span class="plain-syntax">, </span><span class="identifier-syntax">hs</span><span class="plain-syntax">-></span><span class="element-syntax">tag_stack</span><span class="plain-syntax">) == </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">)) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">HTML_tag</span><span class="plain-syntax"> *</span><span class="identifier-syntax">ht</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">i</span><span class="plain-syntax"> = </span><span class="constant-syntax">0</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">LOG</span><span class="plain-syntax">(</span><span class="string-syntax">"HTML tag stack: "</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">LOOP_DOWN_LIFO_STACK</span><span class="plain-syntax">(</span><span class="identifier-syntax">ht</span><span class="plain-syntax">, </span><span class="reserved-syntax">HTML_tag</span><span class="plain-syntax">, </span><span class="identifier-syntax">hs</span><span class="plain-syntax">-></span><span class="element-syntax">tag_stack</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">i</span><span class="plain-syntax">++ > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">LOG</span><span class="plain-syntax">(</span><span class="string-syntax">" in "</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">LOG</span><span class="plain-syntax">(</span><span class="string-syntax">"%s (%d)"</span><span class="plain-syntax">, </span><span class="identifier-syntax">ht</span><span class="plain-syntax">-></span><span class="element-syntax">tag_name</span><span class="plain-syntax">, </span><span class="identifier-syntax">ht</span><span class="plain-syntax">-></span><span class="element-syntax">tag_xref</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> }</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">LOG</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">tag_error</span><span class="plain-syntax">(</span><span class="string-syntax">"HTML tags still open"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> }</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP6"></a><b>§6. </b>We will open and close all HTML tags using the following macros, two
|
|
of which are variadic and have to be written out the old-fashioned way:
|
|
</p>
|
|
|
|
<pre class="definitions code-font"><span class="definition-keyword">define</span> <span class="identifier-syntax">HTML_TAG</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">) </span><a href="5-htm.html#SP7" class="function-link"><span class="function-syntax">HTML::tag</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">);</span>
|
|
<span class="definition-keyword">define</span> <span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">) </span><a href="5-htm.html#SP7" class="function-link"><span class="function-syntax">HTML::open</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">);</span>
|
|
<span class="definition-keyword">define</span> <span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">) </span><a href="5-htm.html#SP7" class="function-link"><span class="function-syntax">HTML::close</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">tag</span><span class="plain-syntax">);</span>
|
|
</pre>
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="plain-syntax">#</span><span class="identifier-syntax">define</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_TAG_WITH</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="identifier-syntax">args</span><span class="plain-syntax">...) { \</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">); \</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">, </span><span class="identifier-syntax">args</span><span class="plain-syntax">); \</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP7" class="function-link"><span class="function-syntax">HTML::tag</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="identifier-syntax">details</span><span class="plain-syntax">); \</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">); \</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="plain-syntax">#</span><span class="identifier-syntax">define</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="identifier-syntax">args</span><span class="plain-syntax">...) { \</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">); \</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">, </span><span class="identifier-syntax">args</span><span class="plain-syntax">); \</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP7" class="function-link"><span class="function-syntax">HTML::open</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="identifier-syntax">details</span><span class="plain-syntax">); \</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">); \</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP7"></a><b>§7. </b>Which themselves depend on these routines:
|
|
</p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::tag</span><button class="popup" onclick="togglePopup('usagePopup5')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup5">Usage of <span class="code-font"><span class="function-syntax">HTML::tag</span></span>:<br/><a href="5-htm.html#SP6">§6</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">details</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"<%s"</span><span class="plain-syntax">, </span><span class="identifier-syntax">tag</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="4-sm.html#SP8" class="function-link"><span class="function-syntax">Str::len</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">) > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" %S"</span><span class="plain-syntax">, </span><span class="identifier-syntax">details</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">HTML_file_state</span><span class="plain-syntax"> *</span><span class="identifier-syntax">hs</span><span class="plain-syntax"> = </span><a href="2-str.html#SP20" class="function-link"><span class="function-syntax">Streams::get_HTML_file_state</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><span class="identifier-syntax">hs</span><span class="plain-syntax">) && (</span><span class="identifier-syntax">hs</span><span class="plain-syntax">-></span><span class="element-syntax">XHTML_flag</span><span class="plain-syntax">)) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" /"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">">"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="5-htm.html#SP7" class="function-link"><span class="function-syntax">HTML::tag_formatting</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">) >= </span><span class="constant-syntax">1</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::tag_sc</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">details</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"<%s"</span><span class="plain-syntax">, </span><span class="identifier-syntax">tag</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="4-sm.html#SP8" class="function-link"><span class="function-syntax">Str::len</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">) > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" %S"</span><span class="plain-syntax">, </span><span class="identifier-syntax">details</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" />"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="5-htm.html#SP7" class="function-link"><span class="function-syntax">HTML::tag_formatting</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">) >= </span><span class="constant-syntax">1</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::tag_formatting</span><span class="plain-syntax">(</span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tag</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"meta"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"link"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"hr"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"br"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax">;</span>
|
|
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">0</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::open</span><button class="popup" onclick="togglePopup('usagePopup6')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup6">Usage of <span class="code-font"><span class="function-syntax">HTML::open</span></span>:<br/><a href="5-htm.html#SP6">§6</a>, <a href="5-htm.html#SP13">§13</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">details</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">f</span><span class="plain-syntax"> = </span><a href="5-htm.html#SP7" class="function-link"><span class="function-syntax">HTML::pair_formatting</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP3" class="function-link"><span class="function-syntax">HTML::push_tag</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">tag</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"<%s"</span><span class="plain-syntax">, </span><span class="identifier-syntax">tag</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="4-sm.html#SP8" class="function-link"><span class="function-syntax">Str::len</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">) > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" %S"</span><span class="plain-syntax">, </span><span class="identifier-syntax">details</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">">"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">f</span><span class="plain-syntax"> >= </span><span class="constant-syntax">2</span><span class="plain-syntax">) { </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">); </span><span class="constant-syntax">INDENT</span><span class="plain-syntax">; }</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::close</span><button class="popup" onclick="togglePopup('usagePopup7')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup7">Usage of <span class="code-font"><span class="function-syntax">HTML::close</span></span>:<br/><a href="5-htm.html#SP6">§6</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tag</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">f</span><span class="plain-syntax"> = </span><a href="5-htm.html#SP7" class="function-link"><span class="function-syntax">HTML::pair_formatting</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">f</span><span class="plain-syntax"> >= </span><span class="constant-syntax">3</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">f</span><span class="plain-syntax"> >= </span><span class="constant-syntax">2</span><span class="plain-syntax">) </span><span class="constant-syntax">OUTDENT</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"</%s>"</span><span class="plain-syntax">, </span><span class="identifier-syntax">tag</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP4" class="function-link"><span class="function-syntax">HTML::pop_tag</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">tag</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">f</span><span class="plain-syntax"> >= </span><span class="constant-syntax">1</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::pair_formatting</span><span class="plain-syntax">(</span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tag</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"td"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">3</span><span class="plain-syntax">;</span>
|
|
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"head"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">2</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"body"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">2</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"div"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">2</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"table"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">2</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"tr"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">2</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"script"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">2</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"style"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">2</span><span class="plain-syntax">;</span>
|
|
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"html"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"p"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"title"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">strcmp</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="string-syntax">"blockquote"</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax">;</span>
|
|
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">0</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP8"></a><b>§8. Head. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_head</span><button class="popup" onclick="togglePopup('usagePopup8')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup8">Usage of <span class="code-font"><span class="function-syntax">HTML::begin_head</span></span>:<br/>Epub Ebooks - <a href="5-ee.html#SP6_3">§6.3</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">CSS_file</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">HTML_file_state</span><span class="plain-syntax"> *</span><span class="identifier-syntax">hs</span><span class="plain-syntax"> = </span><a href="2-str.html#SP20" class="function-link"><span class="function-syntax">Streams::get_HTML_file_state</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><span class="identifier-syntax">hs</span><span class="plain-syntax">) && (</span><span class="identifier-syntax">hs</span><span class="plain-syntax">-></span><span class="element-syntax">XHTML_flag</span><span class="plain-syntax">)) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.1//EN\" "</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd\">\n"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"html"</span><span class="plain-syntax">, </span><span class="string-syntax">"xmlns=\"http://www.w3.org/1999/xhtml\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> } </span><span class="reserved-syntax">else</span><span class="plain-syntax"> {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" "</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\"http://www.w3.org/TR/html4/loose.dtd\">\n"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="string-syntax">"html"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> }</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="string-syntax">"head"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_TAG_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"meta"</span><span class="plain-syntax">, </span><span class="string-syntax">"http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">CSS_file</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_TAG_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"link"</span><span class="plain-syntax">, </span><span class="string-syntax">"href=\"%/f\" rel=\"stylesheet\" type=\"text/css\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">CSS_file</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::end_head</span><button class="popup" onclick="togglePopup('usagePopup9')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup9">Usage of <span class="code-font"><span class="function-syntax">HTML::end_head</span></span>:<br/>Epub Ebooks - <a href="5-ee.html#SP6_3">§6.3</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"head"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP9"></a><b>§9. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::title</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">title</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="string-syntax">"title"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"%S"</span><span class="plain-syntax">, </span><span class="identifier-syntax">title</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"title"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP10"></a><b>§10. Scripts and styles. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::open_javascript</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">define_project</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"script"</span><span class="plain-syntax">, </span><span class="string-syntax">"type=\"text/javascript\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">define_project</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"function project() {\n"</span><span class="plain-syntax">); </span><span class="constant-syntax">INDENT</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> #</span><span class="identifier-syntax">ifdef</span><span class="plain-syntax"> </span><span class="constant-syntax">WINDOWS_JAVASCRIPT</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"return external.Project;\n"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> #</span><span class="identifier-syntax">endif</span>
|
|
<span class="plain-syntax"> #</span><span class="identifier-syntax">ifndef</span><span class="plain-syntax"> </span><span class="constant-syntax">WINDOWS_JAVASCRIPT</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"return window.Project;\n"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> #</span><span class="identifier-syntax">endif</span>
|
|
<span class="plain-syntax"> </span><span class="constant-syntax">OUTDENT</span><span class="plain-syntax">; </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"}\n"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> }</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::close_javascript</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"script"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::incorporate_javascript</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">define_project</span><span class="plain-syntax">, </span><span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">M</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP10" class="function-link"><span class="function-syntax">HTML::open_javascript</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">define_project</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="4-tf.html#SP5" class="function-link"><span class="function-syntax">TextFiles::read</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">M</span><span class="plain-syntax">, </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">, </span><a href="5-htm.html#SP11" class="function-link"><span class="function-syntax">HTML::incorporate_helper</span></a><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="identifier-syntax">OUT</span><span class="plain-syntax">) == </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="constant-syntax">STDERR</span><span class="plain-syntax">, </span><span class="string-syntax">"%f"</span><span class="plain-syntax">, </span><span class="identifier-syntax">M</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">internal_error</span><span class="plain-syntax">(</span><span class="string-syntax">"Unable to open model JS material for reading"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> }</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP10" class="function-link"><span class="function-syntax">HTML::close_javascript</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">HTML_file_state</span><span class="plain-syntax"> *</span><span class="identifier-syntax">hs</span><span class="plain-syntax"> = </span><a href="2-str.html#SP20" class="function-link"><span class="function-syntax">Streams::get_HTML_file_state</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">hs</span><span class="plain-syntax">) </span><span class="identifier-syntax">hs</span><span class="plain-syntax">-></span><span class="element-syntax">JS_included</span><span class="plain-syntax">++;</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::open_CSS</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"style"</span><span class="plain-syntax">, </span><span class="string-syntax">"type=\"text/css\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"<!--\n"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::close_CSS</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"-->\n"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"style"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::incorporate_CSS</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">M</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP10" class="function-link"><span class="function-syntax">HTML::open_CSS</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="4-tf.html#SP5" class="function-link"><span class="function-syntax">TextFiles::read</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">M</span><span class="plain-syntax">, </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">, </span><a href="5-htm.html#SP11" class="function-link"><span class="function-syntax">HTML::incorporate_helper</span></a><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="identifier-syntax">OUT</span><span class="plain-syntax">) == </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">internal_error</span><span class="plain-syntax">(</span><span class="string-syntax">"Unable to open model CSS material for reading"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP10" class="function-link"><span class="function-syntax">HTML::close_CSS</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">HTML_file_state</span><span class="plain-syntax"> *</span><span class="identifier-syntax">hs</span><span class="plain-syntax"> = </span><a href="2-str.html#SP20" class="function-link"><span class="function-syntax">Streams::get_HTML_file_state</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">hs</span><span class="plain-syntax">) </span><span class="identifier-syntax">hs</span><span class="plain-syntax">-></span><span class="element-syntax">CSS_included</span><span class="plain-syntax">++;</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::incorporate_HTML</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">M</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="4-tf.html#SP5" class="function-link"><span class="function-syntax">TextFiles::read</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">M</span><span class="plain-syntax">, </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">, </span><a href="5-htm.html#SP11" class="function-link"><span class="function-syntax">HTML::incorporate_helper</span></a><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="identifier-syntax">OUT</span><span class="plain-syntax">) == </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">internal_error</span><span class="plain-syntax">(</span><span class="string-syntax">"Unable to open model HTML material for reading"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP11"></a><b>§11. </b>The helper simply performs a textual copy:
|
|
</p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::incorporate_helper</span><button class="popup" onclick="togglePopup('usagePopup10')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup10">Usage of <span class="code-font"><span class="function-syntax">HTML::incorporate_helper</span></span>:<br/><a href="5-htm.html#SP10">§10</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">line_of_template</span><span class="plain-syntax">,</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">text_file_position</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tfp</span><span class="plain-syntax">, </span><span class="reserved-syntax">void</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"%S\n"</span><span class="plain-syntax">, </span><span class="identifier-syntax">line_of_template</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP12"></a><b>§12. Body. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_body</span><button class="popup" onclick="togglePopup('usagePopup11')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup11">Usage of <span class="code-font"><span class="function-syntax">HTML::begin_body</span></span>:<br/>Epub Ebooks - <a href="5-ee.html#SP6_3">§6.3</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">class</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">class</span><span class="plain-syntax">) </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"body"</span><span class="plain-syntax">, </span><span class="string-syntax">"class=\"%S\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">class</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="string-syntax">"body"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::end_body</span><button class="popup" onclick="togglePopup('usagePopup12')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup12">Usage of <span class="code-font"><span class="function-syntax">HTML::end_body</span></span>:<br/>Epub Ebooks - <a href="5-ee.html#SP6_3">§6.3</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"body"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"html"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP13"></a><b>§13. Divisions. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_div_with_id</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">id</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"div"</span><span class="plain-syntax">, </span><span class="string-syntax">"id=\"%s\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">id</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_div_with_class</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cl</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"div"</span><span class="plain-syntax">, </span><span class="string-syntax">"class=\"%s\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">cl</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_div_with_class_and_id</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cl</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">id</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">hide</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">hide</span><span class="plain-syntax">) </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"div"</span><span class="plain-syntax">, </span><span class="string-syntax">"class=\"%s\" id=\"%s\" style=\"display: none;\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">cl</span><span class="plain-syntax">, </span><span class="identifier-syntax">id</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"div"</span><span class="plain-syntax">, </span><span class="string-syntax">"class=\"%s\" id=\"%s\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">cl</span><span class="plain-syntax">, </span><span class="identifier-syntax">id</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_div_with_id_S</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">id</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">, </span><span class="string-syntax">"id=\"%S\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">id</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP7" class="function-link"><span class="function-syntax">HTML::open</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="string-syntax">"div"</span><span class="plain-syntax">, </span><span class="identifier-syntax">details</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_div_with_class_S</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cl</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">, </span><span class="string-syntax">"class=\"%S\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">cl</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP7" class="function-link"><span class="function-syntax">HTML::open</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="string-syntax">"div"</span><span class="plain-syntax">, </span><span class="identifier-syntax">details</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_div_with_class_and_id_S</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cl</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">id</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">hide</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">, </span><span class="string-syntax">"class=\"%S\" id=\"%S\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">cl</span><span class="plain-syntax">, </span><span class="identifier-syntax">id</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">hide</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">, </span><span class="string-syntax">" style=\"display: none;\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP7" class="function-link"><span class="function-syntax">HTML::open</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="string-syntax">"div"</span><span class="plain-syntax">, </span><span class="identifier-syntax">details</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::end_div</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"div"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP14"></a><b>§14. Images. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::image</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">F</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_TAG_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"img"</span><span class="plain-syntax">, </span><span class="string-syntax">"src=\"%/f\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">F</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::image_to_dimensions</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">F</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">w</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">h</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><span class="identifier-syntax">w</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) && (</span><span class="identifier-syntax">h</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">)) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_TAG_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"img"</span><span class="plain-syntax">, </span><span class="string-syntax">"src=\"%/f\" alt=\"%S\" width=\"%d\" height=\"%d\""</span><span class="plain-syntax">,</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">F</span><span class="plain-syntax">, </span><a href="3-fln.html#SP7" class="function-link"><span class="function-syntax">Filenames::get_leafname</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">F</span><span class="plain-syntax">), </span><span class="identifier-syntax">w</span><span class="plain-syntax">, </span><span class="identifier-syntax">h</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> } </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">w</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_TAG_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"img"</span><span class="plain-syntax">, </span><span class="string-syntax">"src=\"%/f\" alt=\"%S\" width=\"%d\""</span><span class="plain-syntax">,</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">F</span><span class="plain-syntax">, </span><a href="3-fln.html#SP7" class="function-link"><span class="function-syntax">Filenames::get_leafname</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">F</span><span class="plain-syntax">), </span><span class="identifier-syntax">w</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> } </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">h</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_TAG_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"img"</span><span class="plain-syntax">, </span><span class="string-syntax">"src=\"%/f\" alt=\"%S\" height=\"%d\""</span><span class="plain-syntax">,</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">F</span><span class="plain-syntax">, </span><a href="3-fln.html#SP7" class="function-link"><span class="function-syntax">Filenames::get_leafname</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">F</span><span class="plain-syntax">), </span><span class="identifier-syntax">h</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> } </span><span class="reserved-syntax">else</span><span class="plain-syntax"> {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_TAG_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"img"</span><span class="plain-syntax">, </span><span class="string-syntax">"src=\"%/f\" alt=\"%S\""</span><span class="plain-syntax">,</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">F</span><span class="plain-syntax">, </span><a href="3-fln.html#SP7" class="function-link"><span class="function-syntax">Filenames::get_leafname</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">F</span><span class="plain-syntax">));</span>
|
|
<span class="plain-syntax"> }</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP15"></a><b>§15. Links. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::anchor</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">id</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"a"</span><span class="plain-syntax">, </span><span class="string-syntax">"id=\"%S\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">id</span><span class="plain-syntax">); </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"a"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_link</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">to</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"a"</span><span class="plain-syntax">, </span><span class="string-syntax">"href=\"%S\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">to</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_download_link</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">to</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"a"</span><span class="plain-syntax">, </span><span class="string-syntax">"href=\"%S\" download"</span><span class="plain-syntax">, </span><span class="identifier-syntax">to</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_link_with_class</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cl</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">to</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP15" class="function-link"><span class="function-syntax">HTML::begin_link_with_class_onclick</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">cl</span><span class="plain-syntax">, </span><span class="identifier-syntax">to</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_link_with_class_title</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cl</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">to</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">ti</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP15" class="function-link"><span class="function-syntax">HTML::begin_link_with_class_title_onclick</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">cl</span><span class="plain-syntax">, </span><span class="identifier-syntax">to</span><span class="plain-syntax">, </span><span class="identifier-syntax">ti</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_link_with_class_onclick</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cl</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">to</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">on</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP15" class="function-link"><span class="function-syntax">HTML::begin_link_with_class_title_onclick</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">cl</span><span class="plain-syntax">, </span><span class="identifier-syntax">to</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="identifier-syntax">on</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_link_with_class_title_onclick</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cl</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">to</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">ti</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">on</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"<a href=\"%S\" class=\"%S\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">to</span><span class="plain-syntax">, </span><span class="identifier-syntax">cl</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="4-sm.html#SP8" class="function-link"><span class="function-syntax">Str::len</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">ti</span><span class="plain-syntax">) > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" title=\"%S\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">ti</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="4-sm.html#SP8" class="function-link"><span class="function-syntax">Str::len</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">on</span><span class="plain-syntax">) > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" onclick=\"%S\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">on</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">">"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::end_link</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"a"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP16"></a><b>§16. Tables. </b>Opening a generic bland table with reasonable column spacing:
|
|
</p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_plain_html_table</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP17" class="function-link"><span class="function-syntax">HTML::begin_html_table</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">, </span><span class="constant-syntax">0</span><span class="plain-syntax">, </span><span class="constant-syntax">0</span><span class="plain-syntax">, </span><span class="constant-syntax">0</span><span class="plain-syntax">, </span><span class="constant-syntax">0</span><span class="plain-syntax">, </span><span class="constant-syntax">0</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_wide_html_table</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP17" class="function-link"><span class="function-syntax">HTML::begin_html_table</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="constant-syntax">TRUE</span><span class="plain-syntax">, </span><span class="constant-syntax">0</span><span class="plain-syntax">, </span><span class="constant-syntax">0</span><span class="plain-syntax">, </span><span class="constant-syntax">0</span><span class="plain-syntax">, </span><span class="constant-syntax">0</span><span class="plain-syntax">, </span><span class="constant-syntax">0</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP17"></a><b>§17. </b>And some more general code:
|
|
</p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_html_table</span><button class="popup" onclick="togglePopup('usagePopup13')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup13">Usage of <span class="code-font"><span class="function-syntax">HTML::begin_html_table</span></span>:<br/><a href="5-htm.html#SP16">§16</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">colour</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">full_width</span><span class="plain-syntax">,</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">border</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">cellspacing</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">cellpadding</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">height</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">width</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">, </span><span class="string-syntax">"border=\"%d\" cellspacing=\"%d\" cellpadding=\"%d\""</span><span class="plain-syntax">,</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">border</span><span class="plain-syntax">, </span><span class="identifier-syntax">cellspacing</span><span class="plain-syntax">, </span><span class="identifier-syntax">cellpadding</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">colour</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (*</span><span class="identifier-syntax">colour</span><span class="plain-syntax"> == </span><span class="character-syntax">'*'</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">, </span><span class="string-syntax">" style=\"background-image:url('inform:/%s');\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">colour</span><span class="plain-syntax">+1);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">, </span><span class="string-syntax">" bgcolor=\"%s\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">colour</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> }</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">full_width</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">, </span><span class="string-syntax">" width=100%%"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">width</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">, </span><span class="string-syntax">" width=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">width</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">height</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">, </span><span class="string-syntax">" height=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">height</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"table"</span><span class="plain-syntax">, </span><span class="string-syntax">"%S"</span><span class="plain-syntax">, </span><span class="identifier-syntax">tab</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_html_table_bg</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">colour</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">full_width</span><span class="plain-syntax">,</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">border</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">cellspacing</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">cellpadding</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">height</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">width</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">bg</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">, </span><span class="string-syntax">"border=\"%d\" cellspacing=\"%d\" cellpadding=\"%d\""</span><span class="plain-syntax">,</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">border</span><span class="plain-syntax">, </span><span class="identifier-syntax">cellspacing</span><span class="plain-syntax">, </span><span class="identifier-syntax">cellpadding</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">bg</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">, </span><span class="string-syntax">" background=\"inform:/map_icons/%s\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">bg</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">colour</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">, </span><span class="string-syntax">" bgcolor=\"%s\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">colour</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">full_width</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">, </span><span class="string-syntax">" width=100%%"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">width</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">, </span><span class="string-syntax">" width=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">width</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">height</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">, </span><span class="string-syntax">" height=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">height</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"table"</span><span class="plain-syntax">, </span><span class="string-syntax">"%S"</span><span class="plain-syntax">, </span><span class="identifier-syntax">tab</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">tab</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::first_html_column</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">width</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="string-syntax">"tr"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">width</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"align=\"left\" valign=\"top\" width=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">width</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"align=\"left\" valign=\"top\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::first_html_column_nowrap</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">width</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">colour</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">colour</span><span class="plain-syntax">) </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"tr"</span><span class="plain-syntax">, </span><span class="string-syntax">"bgcolor=\"%s\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">colour</span><span class="plain-syntax">) </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="string-syntax">"tr"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">col</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">col</span><span class="plain-syntax">, </span><span class="string-syntax">"style=\"white-space:nowrap;\" align=\"left\" valign=\"top\" height=\"20\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">width</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">col</span><span class="plain-syntax">, </span><span class="string-syntax">" width=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">width</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"%S"</span><span class="plain-syntax">, </span><span class="identifier-syntax">col</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">col</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::first_html_column_spaced</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">width</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="string-syntax">"tr"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">col</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">col</span><span class="plain-syntax">, </span><span class="string-syntax">"style=\"padding-top: 3px;\" align=\"left\" valign=\"top\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">width</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">col</span><span class="plain-syntax">, </span><span class="string-syntax">" width=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">width</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"%S"</span><span class="plain-syntax">, </span><span class="identifier-syntax">col</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">col</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::first_html_column_coloured</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">width</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">colour</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">cs</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">colour</span><span class="plain-syntax">) </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"tr"</span><span class="plain-syntax">, </span><span class="string-syntax">"bgcolor=\"%s\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">colour</span><span class="plain-syntax">) </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="string-syntax">"tr"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">col</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">col</span><span class="plain-syntax">, </span><span class="string-syntax">"nowrap=\"nowrap\" align=\"left\" valign=\"top\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">width</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">col</span><span class="plain-syntax">, </span><span class="string-syntax">" width=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">width</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">cs</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">col</span><span class="plain-syntax">, </span><span class="string-syntax">" colspan=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">cs</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"%S"</span><span class="plain-syntax">, </span><span class="identifier-syntax">col</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">col</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::next_html_column</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">width</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&nbsp;&nbsp;&nbsp;&nbsp;"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">width</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"align=\"left\" valign=\"top\" width=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">width</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"align=\"left\" valign=\"top\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::next_html_column_centred</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">width</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&nbsp;"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">width</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"align=\"center\" valign=\"top\" width=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">width</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"align=\"center\" valign=\"top\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::next_html_column_spanning</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">width</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">sp</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&nbsp;&nbsp;&nbsp;&nbsp;"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">width</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"align=\"left\" valign=\"top\" colspan=\"%d\" width=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">sp</span><span class="plain-syntax">, </span><span class="identifier-syntax">width</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"align=\"left\" valign=\"top\" colspan=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">sp</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::next_html_column_nowrap</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">width</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&nbsp;"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">width</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"style=\"white-space:nowrap;\" align=\"left\" valign=\"top\" width=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">width</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"style=\"white-space:nowrap;\" align=\"left\" valign=\"top\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::next_html_column_spaced</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">width</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&nbsp;&nbsp;&nbsp;&nbsp;"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">width</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"style=\"padding-top: 3px;\" align=\"left\" valign=\"top\" width=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">width</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"style=\"padding-top: 3px;\" align=\"left\" valign=\"top\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::next_html_column_nw</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">width</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&nbsp;"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">width</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"nowrap=\"nowrap\" align=\"left\" valign=\"top\" width=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">width</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"nowrap=\"nowrap\" align=\"left\" valign=\"top\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::next_html_column_w</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">width</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&nbsp;"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">width</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"align=\"left\" valign=\"top\" width=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">width</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"align=\"left\" valign=\"top\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::next_html_column_right_justified</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">width</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">width</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"align=\"right\" valign=\"top\" width=\"%d\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">width</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"align=\"right\" valign=\"top\""</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::end_html_row</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"tr"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::end_html_table</span><button class="popup" onclick="togglePopup('usagePopup14')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup14">Usage of <span class="code-font"><span class="function-syntax">HTML::end_html_table</span></span>:<br/><a href="5-htm.html#SP18">§18</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"table"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP18"></a><b>§18. Round-rects. </b></p>
|
|
|
|
<pre class="definitions code-font"><span class="definition-keyword">define</span> <span class="constant-syntax">CORNER_SIZE</span><span class="plain-syntax"> </span><span class="constant-syntax">8</span><span class="plain-syntax"> </span><span class="comment-syntax"> measured in pixels</span>
|
|
<span class="definition-keyword">define</span> <span class="constant-syntax">ROUND_BOX_TOP</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span>
|
|
<span class="definition-keyword">define</span> <span class="constant-syntax">ROUND_BOX_BOTTOM</span><span class="plain-syntax"> </span><span class="constant-syntax">2</span>
|
|
</pre>
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::open_coloured_box</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">html_colour</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">rounding</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"table"</span><span class="plain-syntax">,</span>
|
|
<span class="plain-syntax"> </span><span class="string-syntax">"width=\"100%%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\" "</span>
|
|
<span class="plain-syntax"> </span><span class="string-syntax">"style=\"background-color: #%s\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">html_colour</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="string-syntax">"tr"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"width=\"%d\""</span><span class="plain-syntax">, </span><span class="constant-syntax">CORNER_SIZE</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">rounding</span><span class="plain-syntax"> & </span><span class="constant-syntax">ROUND_BOX_TOP</span><span class="plain-syntax">) </span><a href="5-htm.html#SP18" class="function-link"><span class="function-syntax">HTML::box_corner</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">html_colour</span><span class="plain-syntax">, </span><span class="string-syntax">"tl"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"width=\"%d\""</span><span class="plain-syntax">, </span><span class="constant-syntax">CORNER_SIZE</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">rounding</span><span class="plain-syntax"> & </span><span class="constant-syntax">ROUND_BOX_TOP</span><span class="plain-syntax">) </span><a href="5-htm.html#SP18" class="function-link"><span class="function-syntax">HTML::box_corner</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">html_colour</span><span class="plain-syntax">, </span><span class="string-syntax">"tr"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"tr"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="string-syntax">"tr"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"width=\"%d\""</span><span class="plain-syntax">, </span><span class="constant-syntax">CORNER_SIZE</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::close_coloured_box</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">html_colour</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">rounding</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"width=\"%d\""</span><span class="plain-syntax">, </span><span class="constant-syntax">CORNER_SIZE</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"tr"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="string-syntax">"tr"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"width=\"%d\""</span><span class="plain-syntax">, </span><span class="constant-syntax">CORNER_SIZE</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">rounding</span><span class="plain-syntax"> & </span><span class="constant-syntax">ROUND_BOX_BOTTOM</span><span class="plain-syntax">) </span><a href="5-htm.html#SP18" class="function-link"><span class="function-syntax">HTML::box_corner</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">html_colour</span><span class="plain-syntax">, </span><span class="string-syntax">"bl"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">, </span><span class="string-syntax">"width=\"%d\""</span><span class="plain-syntax">, </span><span class="constant-syntax">CORNER_SIZE</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">rounding</span><span class="plain-syntax"> & </span><span class="constant-syntax">ROUND_BOX_BOTTOM</span><span class="plain-syntax">) </span><a href="5-htm.html#SP18" class="function-link"><span class="function-syntax">HTML::box_corner</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">html_colour</span><span class="plain-syntax">, </span><span class="string-syntax">"br"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"td"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"tr"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><a href="5-htm.html#SP17" class="function-link"><span class="function-syntax">HTML::end_html_table</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::box_corner</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">html_colour</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">corner</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_TAG_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"img"</span><span class="plain-syntax">,</span>
|
|
<span class="plain-syntax"> </span><span class="string-syntax">"src=\"inform:/bg_images/%s_corner_%s.gif\" "</span>
|
|
<span class="plain-syntax"> </span><span class="string-syntax">"width=\"%d\" height=\"%d\" border=\"0\" alt=\"...\""</span><span class="plain-syntax">,</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">corner</span><span class="plain-syntax">, </span><span class="identifier-syntax">html_colour</span><span class="plain-syntax">, </span><span class="constant-syntax">CORNER_SIZE</span><span class="plain-syntax">, </span><span class="constant-syntax">CORNER_SIZE</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP19"></a><b>§19. Miscellaneous. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::comment</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">text</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"<!--%S-->\n"</span><span class="plain-syntax">, </span><span class="identifier-syntax">text</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::heading</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tag</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">text</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"%S"</span><span class="plain-syntax">, </span><span class="identifier-syntax">text</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="identifier-syntax">tag</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::hr</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">class</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">class</span><span class="plain-syntax">) </span><span class="identifier-syntax">HTML_TAG_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"hr"</span><span class="plain-syntax">, </span><span class="string-syntax">"class=\"%s\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">class</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">HTML_TAG</span><span class="plain-syntax">(</span><span class="string-syntax">"hr"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP20"></a><b>§20. HTML colours. </b>Inform uses these when constructing the map in the World index.
|
|
</p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">typedef</span><span class="plain-syntax"> </span><span class="reserved-syntax">struct</span><span class="plain-syntax"> </span><span class="reserved-syntax">colour_translation</span><span class="plain-syntax"> {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">wchar_t</span><span class="plain-syntax"> *</span><span class="identifier-syntax">chip_name</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">wchar_t</span><span class="plain-syntax"> *</span><span class="identifier-syntax">html_colour</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax">} </span><span class="reserved-syntax">colour_translation</span><span class="plain-syntax">;</span>
|
|
|
|
<span class="reserved-syntax">colour_translation</span><span class="plain-syntax"> </span><span class="identifier-syntax">table_of_translations</span><span class="plain-syntax">[] = {</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Alice Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"F0F8FF"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Antique White"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FAEBD7"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Aqua"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"00FFFF"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Aquamarine"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"7FFFD4"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Azure"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"F0FFFF"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Beige"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"F5F5DC"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Bisque"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFE4C4"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Black"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"000000"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Blanched Almond"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFEBCD"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"0000FF"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Blue Violet"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"8A2BE2"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Brown"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"A52A2A"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Burly Wood"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"DEB887"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Cadet Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"5F9EA0"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Chartreuse"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"7FFF00"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Chocolate"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"D2691E"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Coral"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FF7F50"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Cornflower Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"6495ED"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Cornsilk"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFF8DC"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Crimson"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"DC143C"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Cyan"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"00FFFF"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"00008B"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Cyan"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"008B8B"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Golden Rod"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"B8860B"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Gray"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"A9A9A9"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Green"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"006400"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Khaki"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"BDB76B"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Magenta"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"8B008B"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Olive Green"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"556B2F"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Orange"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FF8C00"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Orchid"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"9932CC"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Red"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"8B0000"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Salmon"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"E9967A"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Sea Green"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"8FBC8F"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Slate Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"483D8B"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Slate Gray"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"2F4F4F"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Turquoise"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"00CED1"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dark Violet"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"9400D3"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Deep Pink"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FF1493"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Deep Sky Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"00BFFF"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dim Gray"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"696969"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Dodger Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"1E90FF"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Feldspar"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"D19275"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Fire Brick"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"B22222"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Floral White"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFFAF0"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Forest Green"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"228B22"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Fuchsia"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FF00FF"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Gainsboro"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"DCDCDC"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Ghost White"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"F8F8FF"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Gold"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFD700"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Golden Rod"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"DAA520"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Gray"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"808080"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Green"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"008000"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Green Yellow"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"ADFF2F"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Honey Dew"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"F0FFF0"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Hot Pink"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FF69B4"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Indian Red"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"CD5C5C"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Indigo"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"4B0082"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Ivory"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFFFF0"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Khaki"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"F0E68C"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Lavender"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"E6E6FA"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Lavender Blush"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFF0F5"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Lawn Green"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"7CFC00"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Lemon Chiffon"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFFACD"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Light Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"ADD8E6"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Light Coral"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"F08080"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Light Cyan"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"E0FFFF"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Light Golden Rod Yellow"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FAFAD2"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Light Grey"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"D3D3D3"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Light Green"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"90EE90"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Light Pink"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFB6C1"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Light Salmon"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFA07A"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Light Sea Green"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"20B2AA"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Light Sky Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"87CEFA"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Light Slate Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"8470FF"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Light Slate Gray"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"778899"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Light Steel Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"B0C4DE"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Light Yellow"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFFFE0"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Lime"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"00FF00"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Lime Green"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"32CD32"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Linen"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FAF0E6"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Magenta"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FF00FF"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Maroon"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"800000"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Medium Aquamarine"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"66CDAA"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Medium Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"0000CD"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Medium Orchid"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"BA55D3"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Medium Purple"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"9370D8"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Medium Sea Green"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"3CB371"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Medium Slate Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"7B68EE"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Medium Spring Green"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"00FA9A"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Medium Turquoise"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"48D1CC"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Medium Violet Red"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"CA226B"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Midnight Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"191970"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Mint Cream"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"F5FFFA"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Misty Rose"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFE4E1"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Moccasin"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFE4B5"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Navajo White"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFDEAD"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Navy"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"000080"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Old Lace"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FDF5E6"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Olive"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"808000"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Olive Drab"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"6B8E23"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Orange"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFA500"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Orange Red"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FF4500"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Orchid"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"DA70D6"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Pale Golden Rod"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"EEE8AA"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Pale Green"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"98FB98"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Pale Turquoise"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"AFEEEE"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Pale Violet Red"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"D87093"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Papaya Whip"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFEFD5"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Peach Puff"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFDAB9"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Peru"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"CD853F"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Pink"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFC0CB"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Plum"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"DDA0DD"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Powder Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"B0E0E6"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Purple"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"800080"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Red"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FF0000"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Rosy Brown"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"BC8F8F"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Royal Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"4169E1"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Saddle Brown"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"8B4513"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Salmon"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FA8072"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Sandy Brown"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"F4A460"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Sea Green"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"2E8B57"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Sea Shell"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFF5EE"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Sienna"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"A0522D"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Silver"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"C0C0C0"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Sky Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"87CEEB"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Slate Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"6A5ACD"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Slate Gray"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"708090"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Snow"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFFAFA"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Spring Green"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"00FF7F"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Steel Blue"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"4682B4"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Tan"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"D2B48C"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Teal"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"008080"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Thistle"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"D8BFD8"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Tomato"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FF6347"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Turquoise"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"40E0D0"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Violet"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"EE82EE"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Violet Red"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"D02090"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Wheat"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"F5DEB3"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"White"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFFFFF"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"White Smoke"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"F5F5F5"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Yellow"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"FFFF00"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">"Yellow Green"</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">"9ACD32"</span><span class="plain-syntax"> },</span>
|
|
<span class="plain-syntax"> { </span><span class="identifier-syntax">L</span><span class="string-syntax">""</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">""</span><span class="plain-syntax"> }</span>
|
|
<span class="plain-syntax">};</span>
|
|
</pre>
|
|
<ul class="endnotetexts"><li>The structure colour_translation is private to this section.</li></ul>
|
|
<p class="commentary firstcommentary"><a id="SP21"></a><b>§21. </b>The following is used only a handful of times, if at all, and does not
|
|
need to run quickly.
|
|
</p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="identifier-syntax">wchar_t</span><span class="plain-syntax"> *</span><span class="function-syntax">HTML::translate_colour_name</span><span class="plain-syntax">(</span><span class="identifier-syntax">wchar_t</span><span class="plain-syntax"> *</span><span class="identifier-syntax">original</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">for</span><span class="plain-syntax"> (</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">j</span><span class="plain-syntax">=0; </span><a href="4-ws.html#SP2" class="function-link"><span class="function-syntax">Wide::cmp</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">table_of_translations</span><span class="plain-syntax">[</span><span class="identifier-syntax">j</span><span class="plain-syntax">].</span><span class="element-syntax">chip_name</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="string-syntax">""</span><span class="plain-syntax">); </span><span class="identifier-syntax">j</span><span class="plain-syntax">++)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="4-ws.html#SP2" class="function-link"><span class="function-syntax">Wide::cmp</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">table_of_translations</span><span class="plain-syntax">[</span><span class="identifier-syntax">j</span><span class="plain-syntax">].</span><span class="element-syntax">chip_name</span><span class="plain-syntax">, </span><span class="identifier-syntax">original</span><span class="plain-syntax">) == </span><span class="constant-syntax">0</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">table_of_translations</span><span class="plain-syntax">[</span><span class="identifier-syntax">j</span><span class="plain-syntax">].</span><span class="element-syntax">html_colour</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP22"></a><b>§22. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::begin_colour</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">col</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"span"</span><span class="plain-syntax">, </span><span class="string-syntax">"style=\"color:#%S\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">col</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::end_colour</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"span"</span><span class="plain-syntax">);</span>
|
|
<span class="plain-syntax">}</span>
|
|
</pre>
|
|
<nav role="progress"><div class="progresscontainer">
|
|
<ul class="progressbar"><li class="progressprev"><a href="4-pm.html">❮</a></li><li class="progresschapter"><a href="P-abgtf.html">P</a></li><li class="progresschapter"><a href="1-fm.html">1</a></li><li class="progresschapter"><a href="2-dl.html">2</a></li><li class="progresschapter"><a href="3-em.html">3</a></li><li class="progresschapter"><a href="4-chr.html">4</a></li><li class="progresscurrentchapter">5</li><li class="progresscurrent">htm</li><li class="progresssection"><a href="5-ee.html">ee</a></li><li class="progresschapter"><a href="6-bf.html">6</a></li><li class="progresschapter"><a href="7-vn.html">7</a></li><li class="progresschapter"><a href="8-ws.html">8</a></li><li class="progressnext"><a href="5-ee.html">❯</a></li></ul></div>
|
|
</nav><!--End of weave-->
|
|
|
|
</main>
|
|
</body>
|
|
</html>
|
|
|