Skip to content

Commit ad1f162

Browse files
author
4b796c65
committed
1 parent b5b79f1 commit ad1f162

37 files changed

+1400
-1916
lines changed

dev/runRegressionTest.py

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
#!/usr/bin/env python
22
import sys
3+
import os
4+
35
import unittest
46
import time
57
import random
@@ -16,6 +18,7 @@ class TDLTemplate(unittest.TestCase):
1618

1719
@classmethod
1820
def setUpClass(cls):
21+
tdl.setFont('../fonts/libtcod/terminal8x8_gs_ro.png')
1922
cls.console = tdl.init(30, 20, 'TDL UnitTest', False, renderer='SDL')
2023

2124
def setUp(self):
@@ -83,8 +86,19 @@ def test_clearConsole(self):
8386
#for x,y in self.getDrawables():
8487
# self.assertEqual((ch, fg, bg), self.console.getChar(x, y), 'clear should default to white on black')
8588

86-
#def test_changeFonts(self):
87-
# "Fonts are changable on the fly"
89+
def test_changeFonts(self):
90+
"Fonts are changable on the fly... kind of"
91+
FONT_DIR = '../fonts/X11'
92+
for font in os.listdir(FONT_DIR):
93+
if font[-4:] != '.png':
94+
continue # skip all those other files
95+
font = os.path.join(FONT_DIR, font)
96+
tdl.setFont(font)
97+
for x,y in self.getDrawables():
98+
self.console.drawChar(x, y, *self.getRandomCharacter())
99+
tdl.setTitle(font)
100+
tdl.flush()
101+
time.sleep(.25)
88102

89103

90104
class DrawingTests(TDLTemplate):
@@ -190,6 +204,7 @@ def test_drawFrame(self):
190204
# with self.assertRaises(AssertionError):
191205
# self.console.drawFrame(x, y, width, height, ch, fg, bg)
192206

207+
@unittest.skip("Need this to be faster before unskipping")
193208
def test_scrolling(self):
194209
"""marks a spot and then scrolls the console, checks to make sure no
195210
other spots are marked, test also knows if it's out of bounds.

docs/api-objects.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ tdl.screenshot tdl-module.html#screenshot
2424
tdl._iscolor tdl-module.html#_iscolor
2525
tdl._fontinitialized tdl-module.html#_fontinitialized
2626
tdl.forceResolution tdl-module.html#forceResolution
27+
tdl._getImageSize tdl-module.html#_getImageSize
2728
tdl.setFPS tdl-module.html#setFPS
2829
tdl._setchar tdl-module.html#_setchar
2930
tdl._STRTYPES tdl-module.html#_STRTYPES

docs/class-tree.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ <h1 class="epydoc">Class Hierarchy</h1>
166166
<tr>
167167
<td align="left" class="footer">
168168
<a href="epydoc-log.html">Generated by Epydoc
169-
3.0.1 on Thu Dec 13 12:51:20 2012</a>
169+
3.0.1 on Mon Dec 17 00:44:49 2012</a>
170170
</td>
171171
<td align="right" class="footer">
172172
<a target="mainFrame" href="http://epydoc.sourceforge.net"

docs/epydoc-log.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,14 @@
1010
<body bgcolor="white" text="black" link="blue" vlink="#204080"
1111
alink="#204080">
1212
<h1 class="epydoc">Epydoc Log</h1>
13-
<p class="log">Epydoc started at Thu Dec 13 12:51:19 2012</p><div class="log-block"><h2 class="log-hdr">In C:\Users\Kyle\Dropbox\Python\python-tdl\tdl\__init__.py:
13+
<p class="log">Epydoc started at Mon Dec 17 00:44:46 2012</p><div class="log-block"><h2 class="log-hdr">In C:\Users\Kyle\Dropbox\Python\python-tdl\tdl\__init__.py:
1414
Source code parsing failed (but introspection was successful).</h2><div class="log-error"><b>Error</b>:
15-
Error during parsing: invalid syntax (C:\Users\Kyle\Dropbox\Python\python-tdl\tdl\__init__.py, line 49) -- Attempted relative import in non-package, or beyond toplevel package</div>
15+
Error during parsing: invalid syntax (C:\Users\Kyle\Dropbox\Python\python-tdl\tdl\__init__.py, line 53) -- Attempted relative import in non-package, or beyond toplevel package</div>
1616
</div><div class="log-block"><h2 class="log-hdr">In C:\Users\Kyle\Dropbox\Python\python-tdl\tdl\__tcod.py:
1717
No documentation available!</h2></div><div class="log-block"><h2 class="log-hdr">Epydoc Options</h2><div class="log-info">
1818
<table border="0" cellpadding="0" cellspacing="0">
1919
<tr valign="top" class="opt-changed"><td valign="top">configfiles</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>['epydoc.config']</tt></td></tr><tr valign="top" class="opt-changed"><td valign="top">include_log</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>True</tt></td></tr><tr valign="top" class="opt-changed"><td valign="top">inheritance</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>'included'</tt></td></tr><tr valign="top" class="opt-changed"><td valign="top">names</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>['../tdl']</tt></td></tr><tr valign="top" class="opt-changed"><td valign="top">prj_name</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>'python-tdl'</tt></td></tr><tr valign="top" class="opt-changed"><td valign="top">prj_url</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>'http://code.google.com/p/python-tdl/'</tt></td></tr><tr valign="top" class="opt-changed"><td valign="top">show_private</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>False</tt></td></tr><tr valign="top" class="opt-changed"><td valign="top">simple_term</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>True</tt></td></tr><tr valign="top" class="opt-changed"><td valign="top">target</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>'./'</tt></td></tr><tr valign="top" class="opt-changed"><td valign="top">verbosity</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>5</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">action</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>'html'</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">css</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>None</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">debug</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>False</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">docformat</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>'epytext'</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">dotpath</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>None</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">exclude</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>['__tcod']</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">exclude_introspect</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>[]</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">exclude_parse</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>[]</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">external_api</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>[]</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">external_api_file</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>[]</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">external_api_root</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>[]</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">fail_on</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>None</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">graph_font</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>None</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">graph_font_size</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>None</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">graphs</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>[]</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">help_file</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>None</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">include_source_code</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>True</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">introspect</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>True</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">list_classes_separately</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>False</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">load_pickle</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>False</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">parse</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>True</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">prj_link</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>None</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">profile</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>False</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">pstat_files</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>[]</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">quiet</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>0</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">redundant_details</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>False</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">show_frames</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>True</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">show_imports</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>False</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">src_code_tab_width</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>8</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">top_page</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>None</tt></td></tr><tr valign="top" class="opt-default"><td valign="top">verbose</td><td valign="top"><tt>&nbsp;=&nbsp;</tt></td><td valign="top"><tt>0</tt></td></tr></table>
2020
</div>
21-
</div><p class="log">Epydoc finished at Thu Dec 13 12:51:22 2012</p>
22-
<p class="log">(Elapsed time: 2 seconds)</p></body>
21+
</div><p class="log">Epydoc finished at Mon Dec 17 00:44:51 2012</p>
22+
<p class="log">(Elapsed time: 5 seconds)</p></body>
2323
</html>

docs/help.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,7 @@ <h2> The Navigation Bar </h2>
255255
<tr>
256256
<td align="left" class="footer">
257257
<a href="epydoc-log.html">Generated by Epydoc
258-
3.0.1 on Thu Dec 13 12:51:20 2012</a>
258+
3.0.1 on Mon Dec 17 00:44:49 2012</a>
259259
</td>
260260
<td align="right" class="footer">
261261
<a target="mainFrame" href="http://epydoc.sourceforge.net"

docs/identifier-index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -701,7 +701,7 @@ <h1 class="epydoc">Identifier Index</h1>
701701
<tr>
702702
<td align="left" class="footer">
703703
<a href="epydoc-log.html">Generated by Epydoc
704-
3.0.1 on Thu Dec 13 12:51:20 2012</a>
704+
3.0.1 on Mon Dec 17 00:44:49 2012</a>
705705
</td>
706706
<td align="right" class="footer">
707707
<a target="mainFrame" href="http://epydoc.sourceforge.net"

docs/module-tree.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ <h1 class="epydoc">Module Hierarchy</h1>
9999
<tr>
100100
<td align="left" class="footer">
101101
<a href="epydoc-log.html">Generated by Epydoc
102-
3.0.1 on Thu Dec 13 12:51:20 2012</a>
102+
3.0.1 on Mon Dec 17 00:44:49 2012</a>
103103
</td>
104104
<td align="right" class="footer">
105105
<a target="mainFrame" href="http://epydoc.sourceforge.net"

docs/tdl-module.html

Lines changed: 26 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -300,9 +300,9 @@ <h1 class="heading">Drawing</h1>
300300
<table width="100%" cellpadding="0" cellspacing="0" border="0">
301301
<tr>
302302
<td><span class="summary-sig"><a href="tdl-module.html#setFont" class="summary-sig-name">setFont</a>(<span class="summary-sig-arg">path</span>,
303-
<span class="summary-sig-arg">tileWidth</span>,
304-
<span class="summary-sig-arg">tileHeight</span>,
305-
<span class="summary-sig-arg">colomn</span>=<span class="summary-sig-default">False</span>,
303+
<span class="summary-sig-arg">columns</span>=<span class="summary-sig-default">None</span>,
304+
<span class="summary-sig-arg">rows</span>=<span class="summary-sig-default">None</span>,
305+
<span class="summary-sig-arg">columnFirst</span>=<span class="summary-sig-default">False</span>,
306306
<span class="summary-sig-arg">greyscale</span>=<span class="summary-sig-default">False</span>,
307307
<span class="summary-sig-arg">altLayout</span>=<span class="summary-sig-default">False</span>)</span><br />
308308
Changes the font to be used for this session.</td>
@@ -488,9 +488,7 @@ <h3 class="epydoc"><span class="sig"><span class="sig-name">init</span>(<span cl
488488
<p>Due to way Python works you're unlikely to see much of an
489489
improvement by using 'GLSL' or 'OPENGL' as most of the time
490490
Python is slow interacting with the console and the rendering
491-
itself is pretty fast even on 'SDL'.</p>
492-
<p>This should be left at default or switched to 'SDL' for better
493-
reliability and an instantaneous start up time.</p></li>
491+
itself is pretty fast even on 'SDL'.</p></li>
494492
</ul></dd>
495493
<dt>Returns: <a href="tdl.Console-class.html" class="link">Console</a></dt>
496494
<dd>The root console. Only what is drawn on the root console is
@@ -561,9 +559,9 @@ <h3 class="epydoc"><span class="sig"><span class="sig-name">setFPS</span>(<span
561559
<table width="100%" cellpadding="0" cellspacing="0" border="0">
562560
<tr valign="top"><td>
563561
<h3 class="epydoc"><span class="sig"><span class="sig-name">setFont</span>(<span class="sig-arg">path</span>,
564-
<span class="sig-arg">tileWidth</span>,
565-
<span class="sig-arg">tileHeight</span>,
566-
<span class="sig-arg">colomn</span>=<span class="sig-default">False</span>,
562+
<span class="sig-arg">columns</span>=<span class="sig-default">None</span>,
563+
<span class="sig-arg">rows</span>=<span class="sig-default">None</span>,
564+
<span class="sig-arg">columnFirst</span>=<span class="sig-default">False</span>,
567565
<span class="sig-arg">greyscale</span>=<span class="sig-default">False</span>,
568566
<span class="sig-arg">altLayout</span>=<span class="sig-default">False</span>)</span>
569567
</h3>
@@ -574,29 +572,38 @@ <h3 class="epydoc"><span class="sig"><span class="sig-name">setFont</span>(<span
574572

575573
<p>Changes the font to be used for this session. This should be called
576574
before <a href="tdl-module.html#init" class="link">tdl.init</a></p>
575+
<p>If the font specifies its size in its filename (i.e. font_NxN.png)
576+
then this function can auto-detect the tileset formatting and the
577+
parameters columns and rows can be left None.</p>
577578
<p>While it's possible you can change the font mid program it can
578579
sometimes break in rare circumstances. So use caution when doing
579580
this.</p>
580581
<dl class="fields">
581582
<dt>Parameters:</dt>
582583
<dd><ul class="nomargin-top">
583584
<li><strong class="pname"><code>path</code></strong> (string) - Must be a string filepath where a bmp or png file is found.</li>
584-
<li><strong class="pname"><code>tileWidth</code></strong> (int) - The width of an individual tile.</li>
585-
<li><strong class="pname"><code>tileHeight</code></strong> (int) - The height of an individual tile.</li>
586-
<li><strong class="pname"><code>colomn</code></strong> (boolean) - Defines if the characer order goes along the rows or colomns. It
585+
<li><strong class="pname"><code>columns</code></strong> (int) - Number of columns in the tileset.
586+
<p>Can be left None for auto-detection.</p></li>
587+
<li><strong class="pname"><code>rows</code></strong> (int) - Number of rows in the tileset.
588+
<p>Can be left None for auto-detection.</p></li>
589+
<li><strong class="pname"><code>columnFirst</code></strong> (boolean) - Defines if the characer order goes along the rows or colomns. It
587590
should be True if the charater codes 0-15 are in the first
588-
column. And should be False if the characters 0-15 are in the
591+
column. And should be False if the characters 0-15 are in the
589592
first row.</li>
590593
<li><strong class="pname"><code>greyscale</code></strong> (boolean) - Creates an anti-aliased font from a greyscale bitmap. Otherwise
591-
it uses the alpha channel for anti-aliasing.</li>
592-
<li><strong class="pname"><code>altLayout</code></strong> (boolean) - An alternative layout with space in the upper left corner. The
594+
it uses the alpha channel for anti-aliasing.
595+
<p>Unless you actually need anti-aliasing from a font you know
596+
uses a smooth greyscale channel you should leave this on
597+
False.</p></li>
598+
<li><strong class="pname"><code>altLayout</code></strong> (boolean) - An alternative layout with space in the upper left corner. The
593599
colomn parameter is ignored if this is True, find examples of
594-
this layout in the font/ directory included with the python-tdl
595-
source.</li>
600+
this layout in the font/libtcod/ directory included with the
601+
python-tdl source.</li>
596602
</ul></dd>
597603
<dt>Raises:</dt>
598604
<dd><ul class="nomargin-top">
599-
<li><code><strong class='fraise'><a href="tdl.TDLError-class.html">TDLError</a></strong></code> - Will be raised if no file is found at path.</li>
605+
<li><code><strong class='fraise'><a href="tdl.TDLError-class.html">TDLError</a></strong></code> - Will be raised if no file is found at path or if auto- detection
606+
fails.</li>
600607
</ul></dd>
601608
</dl>
602609
<div class="fields"> <p><strong>Note:</strong>
@@ -686,7 +693,7 @@ <h3 class="epydoc"><span class="sig"><span class="sig-name">setTitle</span>(<spa
686693
<tr>
687694
<td align="left" class="footer">
688695
<a href="epydoc-log.html">Generated by Epydoc
689-
3.0.1 on Thu Dec 13 12:51:20 2012</a>
696+
3.0.1 on Mon Dec 17 00:44:50 2012</a>
690697
</td>
691698
<td align="right" class="footer">
692699
<a target="mainFrame" href="http://epydoc.sourceforge.net"

0 commit comments

Comments
 (0)