<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=iso-8859-1" />
<title>~A - ~A</title>
<style type="text/css">
body {
margin: 10px 20px 20px 220px;
padding: 0px;
font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
font-size: small;
text-align: justify;
max-width: 50em;
background-color: white;
}
a, a:visited {
text-decoration: none;
color: maroon;
}
/* index */
div.index {
position: fixed;
top: 0px;
left: 0px;
width: 180px;
height: 100%;
margin: 0px;
padding: 5px;
font-size: 12px;
background-color: #DCDCDC;
border-right: thin black solid;
}
div.index ol {
color: navy;
margin: 0px;
padding-left: 0px;
}
div.index ol li {
list-style: none;
}
div.index ol li:before {
display: marker;
content: counter(heading1) ". ";
counter-increment: heading1;
}
div.index ol ol {
padding-left: 10px;
font-size: 10px;
list-style: none;
counter-reset: heading2;
}
div.index ol ol li:before {
display: marker;
content: counter(heading1)"." counter(heading2)" ";
counter-increment: heading2;
}
/* heading styles */
body > h1 {
margin-top: 0px;
}
h1 {
margin-top: 40px;
margin-bottom: 0px;
color: #4682B4;
}
h1:before {
display: marker;
content: counter(chapter) ". ";
counter-increment: chapter;
counter-reset: section1;
}
h1 + p {
margin-top: 5px;
}
h2 {
margin-top: 20px;
color: #000000;
margin-bottom: 0px;
}
h2:before {
display: marker;
content: counter(chapter) "." counter(section1) " ";
counter-increment: section1;
}
h2 + p {
margin-top: 0px;
}
h3 {
margin-top: 20px;
color: #000000;
margin-bottom: 0px;
}
h3:before {
display: marker;
content: counter(chapter) "." counter(section1) "." counter(section2) " ";
counter-increment: section2;
}
h3 + p {
margin-top: 0px;
}
h4 {
margin-top: 20px;
color: #000000;
margin-bottom: 0px;
}
h4:before {
display: marker;
content: counter(chapter) "." counter(section1) "." counter(section2) "." counter(section3) " ";
counter-increment: section3;
}
h4 + p {
margin-top: 0px;
}
/* generated content for images and tables */
img:after {
content: "[" counter(image) "] " attr(title);
counter-increment: image;
display: block;
font-size: 10px;
font-weight: bold;
margin-top: 5px;
margin-bottom: 20px;
color: black;
}
table:after {
content: "Table " counter(table) ": " attr(summary);
counter-increment: table;
display: table-caption;
caption-side: bottom;
font-size: 10px;
font-weight: bold;
margin-top: 5px;
margin-bottom: 20px;
white-space: nowrap;
color: black;
}
/* code for examples, code and pathnames*/
div.example table {
color: black;
}
div.example, div.code, div.path, div.sequence {
margin: 10px 0px;
border: 1px black solid;
padding: 10px;
background-color: #F4F4F4;
counter-reset: image;
color: maroon;
}
div.example:before {
content: "Example " counter(example);
counter-increment: example;
display: block;
}
div.example + p {
margin-bottom: 0px;
}
div.code:before {
content: "Code";
}
div.path:before {
content: "Path";
}
div.sequence:before {
content: "Sequence";
}
p.reference:before {
display: marker;
content: "[" counter(reference) "]";
counter-increment: reference;
font-weight: bold;
margin-right: 5px;
}
div.code:before, div.example:before, div.path:before, div.sequence:before {
font-weight: bold;
font-size: 15px;
margin-bottom: 20px;
color: black;
}
pre {
color: Green;
margin: 0px;
padding: 0px;
}
/* equation counter */
e:after {
content: "[" counter(equation) "]";
counter-increment: equation;
display: block;
float: right;
margin-right: 10px;
}
/* to prevent the CC image from being numbered */
img[alt="Creative Commons License"] {
display: inline;
}
img[alt="Creative Commons License"]:after {
display: none;
}
div#cc {
background-color: #DCDCDC;
border: thin black solid;
padding: 10px;
font-size: 10px;
}
/* Table Design */
/* http://www.duoh.com/csstutorials/csstables/ */
#mytable {
width: 700px;
padding: 0;
margin: 0;
}
caption {
padding: 0 0 5px 0;
width: 700px;
font: italic 11px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
text-align: right;
}
th {
font: bold 11px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
color: #4f6b72;
border-right: 1px solid #C1DAD7;
border-bottom: 1px solid #C1DAD7;
border-top: 1px solid #C1DAD7;
letter-spacing: 2px;
text-transform: uppercase;
text-align: left;
padding: 6px 6px 6px 12px;
background: #CAE8EA url(images/bg_header.jpg) no-repeat;
}
th.nobg {
border-top: 0;
border-left: 0;
border-right: 1px solid #C1DAD7;
background: none;
}
td {
border-right: 1px solid #C1DAD7;
border-bottom: 1px solid #C1DAD7;
background: #fff;
padding: 6px 6px 6px 12px;
color: #4f6b72;
}
td.alt {
background: #F5FAFA;
color: #797268;
}
th.spec {
border-left: 1px solid #C1DAD7;
border-top: 0;
background: #fff url(images/bullet1.gif) no-repeat;
font: bold 10px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
}
th.specalt {
border-left: 1px solid #C1DAD7;
border-top: 0;
background: #f5fafa url(images/bullet2.gif) no-repeat;
font: bold 10px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
color: #797268;
}
</style>
</head>
<!--
(CC) 2003 Luke Crook. Some Rights Reserved.
http://creativecommons.org/licenses/by/1.0
This page is licensed under a Creative Commons License.
Maintained by the Common Lisp Application Builder project at www.lispbuilder.org
The entire styleguide was copied wholesale from http://www.markschenk.com/cssexp/publication/article.xml
(CC) 2003 Mark Schenk. Some Rights Reserved.
http://creativecommons.org/licenses/by/1.0
This page is licensed under a Creative Commons License.
-->
<BODY BGCOLOR=#FFFFFF >
<h1><a name="top" class=none> ~2:*~A - ~A</a></h1>
<blockquote>
<br> </br><h2><a name=abstract class=abstract>Abstract</a></h2>
<p>
LISPBUILDER-SDL-GFX provides a Lisp wrapper for the
<a href="http://www.ferzkopp.net/joomla/content/view/19/14/">SDL_gfx</a> library,
and provides support for renering several graphics primitives directly to SDL surfaces.
LISPBUILDER-SDL-GFX has a dependency on the LISPBUILDER-SDL package.
LISPBUILDER-SDL-GFX is distributed under the
<a href="http://en.wikipedia.org/wiki/MIT_License">MIT-style license</a>.
</p>
<p>
<font color=red>Current Version:</font> The current version of LISPBUILDER-SDL-GFX is version <a href="#download">0.2</a>.
</p>
<!-- <p> -->
<!-- <font color=red>Download shortcut:</font> <a href="http://www.balooga.com/lispbuilder/~A.zip">http://www.balooga.com/lispbuilder/~:*~A.zip</a>. -->
<!-- </p> -->
</blockquote>
<br> </br><h2><a class=none name="packageover">Package Overview</a></h2>
<p>
Functions and symbols exported from the LISPBUILDER-SDL-GFX package are
accessible from the <code>LISPBUILDER-SDL-GFX:</code> prefix or the
shorter form <code>SDL-GFX:</code> nickname.
</p>
<br> </br><h2><a class=none name="examplesimple">Simple Example</a></h2>
<div class="example">
<p>
This example was created with the following code:
</p>
<p>
<img src="width-height.png" width="206" height="232" title="Width and Height" alt="Width and Height"/>
</p>
<pre>
(defun width-height ()
(let ((width 200) (height 200))
(sdl:with-init ()
(sdl:window width height :title-caption "Width and Height, from Processing.org")
(sdl:clear-display (sdl:color :r 127 :g 127 :b 127))
(loop for i from 0 to height by 20
do (progn (sdl-gfx:draw-box (sdl:rectangle :x 0 :y i :w 200 :h 10)
:color sdl:*black*)
(sdl-gfx:draw-box (sdl:rectangle :x i :y 0 :w 10 :h 200)
:color sdl:*white*)))
(sdl:with-events ()
(:quit-event () t)
(:video-expose-event () (sdl:update-display))))))
</pre>
</div>
<div class="index">
<ol>
<li><a href="#top">LISPBUILDER-SDL-GFX</a></li>
<ol>
<li><a href="#abstract">Abstract</a></li>
<li><a href="#packageover">Package Overview</a></li>
<li><a href="#examplesimple">Simple Example</a></li>
<li><a href="#compatibility">Compatibility</a></li>
<li><a href="#download">Download</a></li>
<li><a href="#installation">Installation</a></li>
<li><a href="#usage">Usage</a></li>
<li><a href="#examples">Examples</a></li>
<li><a href="#dependency">Dependencies</a></li>
<li><a href="#license">License</a></li>
<li><a href="#dictionar">LISPBUILDER-SDL-GFX dictionary</a></li>
<ol>
<li><a href="#dictionary">INDEX</a></li>
</ol>
<li><a href="#ack">Acknowledgements</a></li>
</ol>
</div>
<br> </br><h2><a class=none name="dictionary">The ~A dictionary Index</h2>
<ol>
~{ <li><a href="#~A"><code>~:*~A</code></a>
~}
</li>
</ol>
<br> </br><h2><a class=none name="compatibility">Compatibility</h2>
<p>
The following table describes the status of the Lisp implementations that have been tested with
LISPBUILDER-SDL-GFX:
</p>
<table id="mytable" cellspacing="0" summary="Compatibility">
<tr>
<th><b>Lisp Implementation</b></th>
<th colspan="3"><b>LISPBUILDER-SDL-GFX Status</b></th>
<th><b>Comments</b></th>
</tr>
<tr>
<th colspan="1"></th>
<th><b>Win32</b></th>
<th><b>Linux</b></th>
<th><b>MacOS</b></th>
<th></th>
</tr>
<tr>
<th class="spec" scope="row">
<a href="http://clisp.cons.org/">CLISP v2.38</a>
</th>
<td bgcolor="#60c060">Working</td>
<td bgcolor="#60c060">Working</td>
<td bgcolor="#ff6060">No</td>
<td></td>
</tr>
<tr>
<th class="specalt" scope="row">
<a href="http://www.lispworks.com/">Lispworks v4.4.6 Personal</a>
</th>
<td class="alt" bgcolor="#60c060">Working</td>
<td class="alt" bgcolor="#60c060">Working</td>
<td class="alt" bgcolor="#ff6060">No</td>
<td></td>
</tr>
<tr>
<th class="spec" scope="row">
<a href="http://www.franz.com/">Allegro Express 8.0</a>
</th>
<td bgcolor="#ff6060">Unknown</td>
<td bgcolor="#ff6060">Unknown</td>
<td bgcolor="#ff6060">No</td>
<td></td>
</tr>
<tr>
<th class="specalt" scope="row">
<a href="http://openmcl.clozure.com/">OpenMCL</a>
</th>
<td class="alt" bgcolor=blue><font color="#FFFFFF">NA</font></td>
<td class="alt" bgcolor=blue><font color="#FFFFFF">NA</font></td>
<td class="alt" bgcolor="#ff6060">Unknown</td>
<td></td>
</tr>
<tr>
<th class="spec" scope="row">
<a href="http://www.sbcl.org/">SBCL</a>
</th>
<td bgcolor="#60c060">Working</td>
<td bgcolor="#60c060">Working</td>
<td bgcolor="#ff6060">No</td>
<td></td>
</tr>
</table>
<br> </br><h2><a class=none name="download">Download</a></h2>
<ul>
<li><font color=red>Development:</font> Available via anonymous SVN at:
<pre>
svn co https://lispbuilder.svn.sourceforge.net/svnroot/lispbuilder lispbuilder
</pre>
</li>
<li>
<font color=red>Stable:</font> The latest stable versions are available from the
<a href="http://sourceforge.net/project/showfiles.php?group_id=159740">LISPBUILDER-SDL repository on SourceForge.</a>
</li>
<li>
<font color=red>The Edi Weitz 'Starter Pack' Version:</font> The stable version of Lispbuilder,
suitable for the installation of installation ~2:*~A using the Lisp Starter Pack from Edi Weitz is can be downloaded from
<a href="http://www.balooga.com/lispbuilder/~2:*~A.zip">http://www.balooga.com/lispbuilder/~:*~A.zip</a>.
</li>
</ul>
<br> </br><h2><a class=none name="installation">Installation</a></h2>
<p>See <a href="http://lispbuilder.sourceforge.net/index.html#installation">the LISPBUILDER documentation</a>
for installation instructions.
</p>
<br> </br><h2><a class=none name="usage">Using LISPBUILDER-SDL-GFX</a></h2>
<p>See <a href="http://lispbuilder.sourceforge.net/index.html#usage">the LISPBUILDER documentation</a>
for Usage instructions.
</p>
<br> </br><h2><a class=none name="examples">Running Examples in LISPBUILDER-SDL-GFX-EXAMPLES</a></h2>
<p>Enter the following at the REPL to load the examples included in the
LISPBUILDER-SDL-GFX-EXAMPLES package:</p>
<pre>
(asdf:operate 'asdf:load-op :lispbuilder-sdl-gfx-examples)
</pre>
<p>Run the examples by entering any of the following at the REPL:
</p>
<ul>
<li>(SDL-GFX-EXAMPLES:RECURSION)</li>
<li>(SDL-GFX-EXAMPLES:METABALLS)</li>
<li>(SDL-GFX-EXAMPLES:POINTS-AND-LINES)</li>
<li>(SDL-GFX-EXAMPLES:FUNCTIONS)</li>
<li>(SDL-GFX-EXAMPLES:WIDTH-HEIGHT)</li>
<li>(SDL-GFX-EXAMPLES:INBUILT-FONT)</li>
<li>(SDL-GFX-EXAMPLES:BEZIER)</li>
<li>(SDL-GFX-EXAMPLES:VERTICES)</li>
<li>(SDL-GFX-EXAMPLES:SHAPE-PRIMITIVES)</li>
<li>(SDL-GFX-EXAMPLES:SETUP-AND-DRAW)</li>
<li>(SDL-GFX-EXAMPLES:DISTANCE-2D)</li>
<li>(SDL-GFX-EXAMPLES:RANDOM-CIRCLES)</li>
<li>(SDL-GFX-EXAMPLES:OBJECTS)</li>
</ul>
<br> </br><h2><a class=none name="dependency">Dependencies</a></h2>
<p>LISPBUILDER-SDL-GFX has a dependency on LISPBUILDER-SDL.</p>
<br> </br><h2><a class=none name="license">License</a></h2>
<p>
LISPBUILDER-SDL-GFX is distributed under the
<a href="http://en.wikipedia.org/wiki/MIT_License">MIT-style license</a>.
</p>
<br> </br><h2><a class=none name="dictionar">The ~A dictionary</a></h2>