Added new stuff
kthakore [Mon, 23 Aug 2010 13:54:34 +0000 (13:54 +0000)]
pages/SDLx-App.html-inc
pages/SDLx-Layer.html-inc [new file with mode: 0644]
pages/SDLx-LayerManager.html-inc [new file with mode: 0644]
pages/SDLx-Sound.html-inc [new file with mode: 0644]
pages/SDLx-Sprite-Animated.html-inc
pages/SDLx-Surface.html-inc
pages/documentation.html-inc

index b1f6592..72ae752 100644 (file)
@@ -8,17 +8,20 @@
 <li><a href="#DESCRIPTION">DESCRIPTION</a></li>
 <li><a href="#METHODS">METHODS</a>
 <ul><li><a href="#new">new</a></li>
-<li><a href="#title">title</a></li>
-<li><a href="#delay">delay</a></li>
+<li><a href="#title">title()</a></li>
+<li><a href="#title_new_title">title( $new_title )</a></li>
+<li><a href="#title_window_title_icon_title">title( $window_title, $icon_title )</a></li>
+<li><a href="#delay_ms">delay( $ms )</a></li>
 <li><a href="#ticks">ticks</a></li>
 <li><a href="#error">error</a></li>
-<li><a href="#resize">resize</a></li>
+<li><a href="#resize_width_height">resize( $width, $height )</a></li>
 <li><a href="#fullscreen">fullscreen</a></li>
 <li><a href="#iconify">iconify</a></li>
-<li><a href="#grab_input">grab_input</a></li>
-<li><a href="#loop">loop</a></li>
+<li><a href="#grab_input_CONSTANT">grab_input( $CONSTANT )</a></li>
+<li><a href="#loop_actions">loop( \%actions )</a></li>
 <li><a href="#sync">sync</a></li>
-<li><a href="#attribute_attr_value">attribute ( attr, [value] )</a></li>
+<li><a href="#attribute_attr">attribute( $attr )</a></li>
+<li><a href="#attribute_attr_value">attribute( $attr, $value )</a></li>
 </ul>
 </li>
 <li><a href="#AUTHOR">AUTHOR</a></li>
@@ -52,7 +55,7 @@
     ); 
 
 </pre>
-<p>This is the manual way of doing things      </p>
+<p>This is the manual way of doing things</p>
 <pre>    my $event = SDL::Event-&gt;new; # create a new event 
 
     SDL::Events::pump_events();
@@ -64,7 +67,7 @@
     }
 
 </pre>
-<p>An alternative to the manual Event processing is the <a href="http://search.cpan.org/perldoc?SDLx::App::loop">SDLx::App::loop</a> .</p>
+<p>An alternative to the manual Event processing is the <a href="http://search.cpan.org/perldoc?SDLx::App::loop">SDLx::App::loop</a>.</p>
 
 </div>
 <h1 id="DESCRIPTION">DESCRIPTION</h1><p><a href="#TOP" class="toplink">Top</a></p>
@@ -83,30 +86,41 @@ manager oriented functions.</p>
 <p><code>SDLx::App::new</code> initializes the SDL, creates a new screen,
 and initializes some of the window manager properties.
 <code>SDLx::App::new</code> takes a series of named parameters:</p>
-<ul>
-               <li>title       </li>
-               <li>icon_title  </li>
-               <li>icon        </li>
-               <li>width       </li>
-               <li>height      </li>
-               <li>depth       </li>
-               <li>flags       </li>
-               <li>resizeable</li>
-</ul>
+<dl>
+       <dt>* title</dt>
+       <dt>* icon_title</dt>
+       <dt>* icon</dt>
+       <dt>* width</dt>
+       <dt>* height</dt>
+       <dt>* depth</dt>
+       <dt>* flags</dt>
+       <dt>* resizeable</dt>
+</dl>
+
+
+
 
 
 </div>
-<h2 id="title">title</h2>
+<h2 id="title">title()</h2>
 <div id="title_CONTENT">
-<p><code>SDLx::App::title</code> takes 0, 1, or 2  arguments.  It returns the current
-application window title.  If one parameter is passed, both the window
-title and icon title will be set to its value.  If two parameters are
-passed the window title will be set to the first, and the icon title
-to the second.</p>
 
 </div>
-<h2 id="delay">delay</h2>
-<div id="delay_CONTENT">
+<h2 id="title_new_title">title( $new_title )</h2>
+<div id="title_new_title_CONTENT">
+
+</div>
+<h2 id="title_window_title_icon_title">title( $window_title, $icon_title )</h2>
+<div id="title_window_title_icon_title_CONTEN">
+<p><code>SDLx::App::title</code> takes 0, 1, or 2 arguments. If no parameter is given,
+it returns the current application window title. If one parameter is
+passed, both the window title and icon title will be set to its value.
+If two parameters are passed the window title will be set to the first,
+and the icon title to the second.</p>
+
+</div>
+<h2 id="delay_ms">delay( $ms )</h2>
+<div id="delay_ms_CONTENT">
 <p><code>SDLx::App::delay</code> takes 1 argument, and will sleep the application for
 that many ms.</p>
 
@@ -121,10 +135,10 @@ that many ms.</p>
 <p><code>SDLx::App::error</code> returns the last error message set by the SDL.</p>
 
 </div>
-<h2 id="resize">resize</h2>
-<div id="resize_CONTENT">
-<p><code>SDLx::App::resize</code> takes a new height and width of the application
-if the application was originally created with the resizable option.</p>
+<h2 id="resize_width_height">resize( $width, $height )</h2>
+<div id="resize_width_height_CONTENT">
+<p><code>SDLx::App::resize</code> takes a new width and height of the application. Only
+works if the application was originally created with the resizable option.</p>
 
 </div>
 <h2 id="fullscreen">fullscreen</h2>
@@ -134,29 +148,26 @@ if the application was originally created with the resizable option.</p>
 </div>
 <h2 id="iconify">iconify</h2>
 <div id="iconify_CONTENT">
-<p><code>SDLx::App::iconify</code> iconifies the applicaiton window.</p>
+<p><code>SDLx::App::iconify</code> iconifies the application window.</p>
 
 </div>
-<h2 id="grab_input">grab_input</h2>
-<div id="grab_input_CONTENT">
+<h2 id="grab_input_CONSTANT">grab_input( $CONSTANT )</h2>
+<div id="grab_input_CONSTANT_CONTENT">
 <p><code>SDLx::App::grab_input</code> can be used to change the input focus behavior of
-the application.  It takes one argument, which should be one of the following:</p>
+the application. It takes one argument, which should be one of the following:</p>
 <dl>
-       <dt>*
-SDL_GRAB_QUERY</dt>
-       <dt>*
-SDL_GRAB_ON</dt>
-       <dt>*
-SDL_GRAB_OFF</dt>
+       <dt>* SDL_GRAB_QUERY</dt>
+       <dt>* SDL_GRAB_ON</dt>
+       <dt>* SDL_GRAB_OFF</dt>
 </dl>
 
 </div>
-<h2 id="loop">loop</h2>
-<div id="loop_CONTENT">
+<h2 id="loop_actions">loop( \%actions )</h2>
+<div id="loop_actions_CONTENT">
 <p><code>SDLx::App::loop</code> is a simple event loop method which takes a reference to a hash
-of event handler subroutines.  The keys of the hash must be SDL event types such
-as SDL_QUIT(), SDL_KEYDOWN(), and the like.  The event method recieves as its parameter 
-the event object used in the loop.</p>
+of event handler subroutines. The keys of the hash must be SDL event types such
+as SDL_QUIT(), SDL_KEYDOWN(), and the like. When called, the event method recieves
+as its parameter the event object used in the loop.</p>
 <p>Example:</p>
 <pre>    my $app = SDLx::App-&gt;new(
         title  =&gt; &quot;test.app&quot;, 
@@ -178,14 +189,18 @@ the event object used in the loop.</p>
 <h2 id="sync">sync</h2>
 <div id="sync_CONTENT">
 <p><code>SDLx::App::sync</code> encapsulates the various methods of syncronizing the screen with the
-current video buffer.  <code>SDLx::App::sync</code> will do a fullscreen update, using the double buffer
-or OpenGL buffer if applicable.  This is prefered to calling flip on the application window.</p>
+current video buffer. <code>SDLx::App::sync</code> will do a fullscreen update, using the double buffer
+or OpenGL buffer if applicable. This is prefered to calling flip on the application window.</p>
+
+</div>
+<h2 id="attribute_attr">attribute( $attr )</h2>
+<div id="attribute_attr_CONTENT">
 
 </div>
-<h2 id="attribute_attr_value">attribute ( attr, [value] )</h2>
+<h2 id="attribute_attr_value">attribute( $attr, $value )</h2>
 <div id="attribute_attr_value_CONTENT">
-<p><code>SDLx::App::attribute</code> allows one to set and get GL attributes.  By passing a value
-in addition to the attribute selector, the value will be set.  <code>SDL:::App::attribute</code>
+<p><code>SDLx::App::attribute</code> allows one to get and set GL attributes. By passing a value
+in addition to the attribute selector, the value will be set. <code>SDL:::App::attribute</code>
 always returns the current value of the given attribute, or croaks on failure.</p>
 
 </div>
diff --git a/pages/SDLx-Layer.html-inc b/pages/SDLx-Layer.html-inc
new file mode 100644 (file)
index 0000000..556b041
--- /dev/null
@@ -0,0 +1,164 @@
+<div class="pod">
+<!-- INDEX START -->
+<h3 id="TOP">Index</h3>
+
+<ul><li><a href="#NAME">NAME</a></li>
+<li><a href="#CATEGORY">CATEGORY </a></li>
+<li><a href="#SYNOPSIS">SYNOPSIS</a></li>
+<li><a href="#DESCRIPTION">DESCRIPTION</a></li>
+<li><a href="#METHODS">METHODS</a>
+<ul><li><a href="#new">new</a></li>
+<li><a href="#index">index</a></li>
+<li><a href="#x">x</a></li>
+<li><a href="#y">y</a></li>
+<li><a href="#w">w</a></li>
+<li><a href="#h">h</a></li>
+<li><a href="#surface">surface</a></li>
+<li><a href="#clip">clip</a></li>
+<li><a href="#pos">pos</a></li>
+<li><a href="#data">data</a></li>
+<li><a href="#ahead">ahead</a></li>
+<li><a href="#behind">behind</a></li>
+<li><a href="#attach">attach</a></li>
+<li><a href="#detach_xy">detach_xy</a></li>
+<li><a href="#foreground">foreground</a></li>
+</ul>
+</li>
+<li><a href="#BUGS">BUGS</a></li>
+<li><a href="#SUPPORT">SUPPORT</a></li>
+<li><a href="#AUTHOR">AUTHOR</a></li>
+<li><a href="#COPYRIGHT">COPYRIGHT</a></li>
+<li><a href="#SEE_ALSO">SEE ALSO</a>
+</li>
+</ul><hr />
+<!-- INDEX END -->
+
+<h1 id="NAME">NAME</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="NAME_CONTENT">
+<p>SDLx::Layer - Extension ...</p>
+
+</div>
+<h1 id="CATEGORY">CATEGORY </h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="CATEGORY_CONTENT">
+<p>Extension</p>
+
+</div>
+<h1 id="SYNOPSIS">SYNOPSIS</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="SYNOPSIS_CONTENT">
+<pre>  use SDLx::Layer;
+  use SDLx::LayerManager;
+
+</pre>
+
+</div>
+<h1 id="DESCRIPTION">DESCRIPTION</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="DESCRIPTION_CONTENT">
+
+
+
+
+
+</div>
+<h1 id="METHODS">METHODS</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="METHODS_CONTENT">
+
+</div>
+<h2 id="new">new</h2>
+<div id="new_CONTENT">
+
+</div>
+<h2 id="index">index</h2>
+<div id="index_CONTENT">
+
+</div>
+<h2 id="x">x</h2>
+<div id="x_CONTENT">
+
+</div>
+<h2 id="y">y</h2>
+<div id="y_CONTENT">
+
+</div>
+<h2 id="w">w</h2>
+<div id="w_CONTENT">
+
+</div>
+<h2 id="h">h</h2>
+<div id="h_CONTENT">
+
+</div>
+<h2 id="surface">surface</h2>
+<div id="surface_CONTENT">
+
+</div>
+<h2 id="clip">clip</h2>
+<div id="clip_CONTENT">
+
+</div>
+<h2 id="pos">pos</h2>
+<div id="pos_CONTENT">
+
+</div>
+<h2 id="data">data</h2>
+<div id="data_CONTENT">
+
+</div>
+<h2 id="ahead">ahead</h2>
+<div id="ahead_CONTENT">
+
+</div>
+<h2 id="behind">behind</h2>
+<div id="behind_CONTENT">
+
+</div>
+<h2 id="attach">attach</h2>
+<div id="attach_CONTENT">
+
+</div>
+<h2 id="detach_xy">detach_xy</h2>
+<div id="detach_xy_CONTENT">
+
+</div>
+<h2 id="foreground">foreground</h2>
+<div id="foreground_CONTENT">
+
+</div>
+<h1 id="BUGS">BUGS</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="BUGS_CONTENT">
+<p>Report at sdlperl.ath.cx</p>
+
+</div>
+<h1 id="SUPPORT">SUPPORT</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="SUPPORT_CONTENT">
+<p>#sdl irc.perl.org</p>
+
+</div>
+<h1 id="AUTHOR">AUTHOR</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="AUTHOR_CONTENT">
+<pre>    Tobias Leich
+    CPAN ID: FROGGS
+    ---
+    froggs@cpan.org
+    http://sdl.perl.org
+
+</pre>
+
+</div>
+<h1 id="COPYRIGHT">COPYRIGHT</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="COPYRIGHT_CONTENT">
+<p>This program is free software; you can redistribute
+it and/or modify it under the same terms as Perl itself.</p>
+<p>The full text of the license can be found in the
+LICENSE file included with this module.</p>
+
+
+
+
+
+</div>
+<h1 id="SEE_ALSO">SEE ALSO</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="SEE_ALSO_CONTENT">
+<p>perl(1), SDL(2).</p>
+
+</div>
+</div>
\ No newline at end of file
diff --git a/pages/SDLx-LayerManager.html-inc b/pages/SDLx-LayerManager.html-inc
new file mode 100644 (file)
index 0000000..5429bca
--- /dev/null
@@ -0,0 +1,174 @@
+<div class="pod">
+<!-- INDEX START -->
+<h3 id="TOP">Index</h3>
+
+<ul><li><a href="#NAME">NAME</a></li>
+<li><a href="#CATEGORY">CATEGORY </a></li>
+<li><a href="#SYNOPSIS">SYNOPSIS</a></li>
+<li><a href="#DESCRIPTION">DESCRIPTION</a></li>
+<li><a href="#METHODS">METHODS</a>
+<ul><li><a href="#new">new</a></li>
+<li><a href="#add">add</a></li>
+<li><a href="#layers">layers</a></li>
+<li><a href="#layer">layer</a></li>
+<li><a href="#length">length</a></li>
+<li><a href="#blit">blit</a></li>
+<li><a href="#by_position">by_position</a></li>
+<li><a href="#ahead">ahead</a></li>
+<li><a href="#behind">behind</a></li>
+<li><a href="#attach">attach</a></li>
+<li><a href="#detach_xy">detach_xy</a></li>
+<li><a href="#detach_back">detach_back</a></li>
+<li><a href="#foreground">foreground</a></li>
+</ul>
+</li>
+<li><a href="#BUGS">BUGS</a></li>
+<li><a href="#SUPPORT">SUPPORT</a></li>
+<li><a href="#AUTHOR">AUTHOR</a></li>
+<li><a href="#COPYRIGHT">COPYRIGHT</a></li>
+<li><a href="#SEE_ALSO">SEE ALSO</a>
+</li>
+</ul><hr />
+<!-- INDEX END -->
+
+<h1 id="NAME">NAME</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="NAME_CONTENT">
+<p>SDLx::LayerManager - Extension for managing layers in a 2D world</p>
+
+</div>
+<h1 id="CATEGORY">CATEGORY </h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="CATEGORY_CONTENT">
+<p>Extension</p>
+
+</div>
+<h1 id="SYNOPSIS">SYNOPSIS</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="SYNOPSIS_CONTENT">
+<pre>  use SDLx::Layer;
+  use SDLx::LayerManager;
+
+  use SDL::Image;
+  use SDL::Surface;
+  use SDL::Video;
+
+  # creating layers
+  my $layer1 = SDLx::Layer-&gt;new( SDL::Image::load('image1.png'), {userdata =&gt; '7'} );
+  my $layer2 = SDLx::Layer-&gt;new( SDL::Image::load('image2.png'), 100, 200, {userdata =&gt; '42'} );
+
+  # creating the manager that holds the layers
+  my $layermanager = SDLx::LayerManager-&gt;new();
+  $layermanager-&gt;add( $layer1 );
+  $layermanager-&gt;add( $layer2 );
+
+  my $display = # create your video surface here
+
+  $layermanager-&gt;blit( $display );
+
+  # accessing the layer at point(x,y)
+  print( $layermanager-&gt;by_position( 150, 200 )-&gt;data-&gt;{userdata} ); # should print '42'
+
+</pre>
+
+</div>
+<h1 id="DESCRIPTION">DESCRIPTION</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="DESCRIPTION_CONTENT">
+<p>The LayerManager ...</p>
+
+</div>
+<h1 id="METHODS">METHODS</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="METHODS_CONTENT">
+
+</div>
+<h2 id="new">new</h2>
+<div id="new_CONTENT">
+
+</div>
+<h2 id="add">add</h2>
+<div id="add_CONTENT">
+
+</div>
+<h2 id="layers">layers</h2>
+<div id="layers_CONTENT">
+
+</div>
+<h2 id="layer">layer</h2>
+<div id="layer_CONTENT">
+
+</div>
+<h2 id="length">length</h2>
+<div id="length_CONTENT">
+
+</div>
+<h2 id="blit">blit</h2>
+<div id="blit_CONTENT">
+
+</div>
+<h2 id="by_position">by_position</h2>
+<div id="by_position_CONTENT">
+<pre>  my $layer = $layermanager-&gt;by_position( $x, $y );
+
+</pre>
+
+</div>
+<h2 id="ahead">ahead</h2>
+<div id="ahead_CONTENT">
+
+</div>
+<h2 id="behind">behind</h2>
+<div id="behind_CONTENT">
+
+</div>
+<h2 id="attach">attach</h2>
+<div id="attach_CONTENT">
+
+</div>
+<h2 id="detach_xy">detach_xy</h2>
+<div id="detach_xy_CONTENT">
+
+</div>
+<h2 id="detach_back">detach_back</h2>
+<div id="detach_back_CONTENT">
+
+</div>
+<h2 id="foreground">foreground</h2>
+<div id="foreground_CONTENT">
+
+</div>
+<h1 id="BUGS">BUGS</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="BUGS_CONTENT">
+<p>Report at sdlperl.ath.cx</p>
+
+</div>
+<h1 id="SUPPORT">SUPPORT</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="SUPPORT_CONTENT">
+<p>#sdl irc.perl.org</p>
+
+</div>
+<h1 id="AUTHOR">AUTHOR</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="AUTHOR_CONTENT">
+<pre>    Tobias Leich
+    CPAN ID: FROGGS
+    ---
+    froggs@cpan.org
+    http://sdl.perl.org
+
+</pre>
+
+</div>
+<h1 id="COPYRIGHT">COPYRIGHT</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="COPYRIGHT_CONTENT">
+<p>This program is free software; you can redistribute
+it and/or modify it under the same terms as Perl itself.</p>
+<p>The full text of the license can be found in the
+LICENSE file included with this module.</p>
+
+
+
+
+
+</div>
+<h1 id="SEE_ALSO">SEE ALSO</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="SEE_ALSO_CONTENT">
+<p>perl(1), SDL(2).</p>
+
+</div>
+</div>
\ No newline at end of file
diff --git a/pages/SDLx-Sound.html-inc b/pages/SDLx-Sound.html-inc
new file mode 100644 (file)
index 0000000..cb21361
--- /dev/null
@@ -0,0 +1,225 @@
+<div class="pod">
+<!-- INDEX START -->
+<h3 id="TOP">Index</h3>
+
+<ul><li><a href="#NAME">NAME</a></li>
+<li><a href="#VERSION">VERSION</a></li>
+<li><a href="#SYNOPSIS">SYNOPSIS</a></li>
+<li><a href="#DESCRIPTION">DESCRIPTION</a></li>
+<li><a href="#METHODS">METHODS</a>
+<ul><li><a href="#new">new</a></li>
+<li><a href="#load">load</a></li>
+<li><a href="#play">play</a></li>
+<li><a href="#loud">loud</a></li>
+<li><a href="#stop">stop</a></li>
+</ul>
+</li>
+<li><a href="#AUTHOR">AUTHOR</a></li>
+<li><a href="#BUGS">BUGS</a></li>
+<li><a href="#SUPPORT">SUPPORT</a></li>
+<li><a href="#ACKNOWLEDGEMENTS">ACKNOWLEDGEMENTS</a></li>
+<li><a href="#LICENSE_AND_COPYRIGHT">LICENSE AND COPYRIGHT</a>
+</li>
+</ul><hr />
+<!-- INDEX END -->
+
+<h1 id="NAME">NAME</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="NAME_CONTENT">
+<p>SDLx::Sound</p>
+
+</div>
+<h1 id="VERSION">VERSION</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="VERSION_CONTENT">
+<p>Version 0.01_01</p>
+
+
+
+
+
+</div>
+<h1 id="SYNOPSIS">SYNOPSIS</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="SYNOPSIS_CONTENT">
+<pre>    use SDLx::Sound;
+
+    my $snd = SDLx::Sound-&gt;new();
+
+    # loads and plays a single sound now
+    $snd-&gt;play('myfile.wav');
+
+    # load a single file
+    $snd-&gt;load('theSound.aif');
+
+    # plays it or all loaded files
+    $snd-&gt;play();
+
+    # more sounds
+    my %files = (
+        chanell_01 =&gt; &quot;/my_sound1.wav&quot;,
+        chanell_02 =&gt; &quot;/my_sound2.ogg&quot;
+    );
+
+    # times sounds bangs
+    my %times = (
+        chanell_01 =&gt; 0,      # start
+        chanell_01 =&gt; 1256,   # miliseconds
+        chanell_02 =&gt; 2345
+    );
+
+    # Load files in channels for realtime play
+    $snd-&gt;load(%files);
+
+    # sets sound channel_01 loudness
+    $snd-&gt;loud('channel_01', 80);       # loud at 80%
+    $snd-&gt;play(%times);                 # play loaded files at times
+    $snd-&gt;play;                         # play again
+
+    # plays sound channel_01 at 578 miliseconds from now
+    $snd-&gt;play('channel_01', 578);
+
+    # fades sound 
+    $snd-&gt;fade('channel_02', 2345, 3456, -20);
+
+    # in a single act do the wole Sound
+    my $snd = SDLx::Sound-&gt;new(
+        files =&gt; (
+            chanell_01 =&gt; &quot;/my_sound1.wav&quot;,
+            chanell_02 =&gt; &quot;/my_sound2.ogg&quot;
+
+        ), 
+        loud  =&gt; (
+            channel_01 =&gt; 80,
+            channel_02 =&gt; 75
+        ),
+        times =&gt; (
+            chanell_01 =&gt; 0,      # start
+            chanell_01 =&gt; 1256,   # miliseconds
+            chanell_02 =&gt; 2345
+        ),
+        fade  =&gt; (
+            chanell_02 =&gt; [2345, 3456, -20]
+        )
+    )-&gt;play();
+
+</pre>
+
+</div>
+<h1 id="DESCRIPTION">DESCRIPTION</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="DESCRIPTION_CONTENT">
+
+
+
+
+<p>You can think about the SDLx::Sound at 2 aproaches. </p>
+<dl>
+       <dt>* A simple sound or </dt>
+       <dt>* The sound of your game or app. </dt>
+</dl>
+<p>Your application will say what the best aproach.</p>
+<p>In a taste that resembles to perl and to SDL, our SDLx:Sound hooks at SDL::Audio and SDL::Mixer with a gracefull and simple interface that can offer to monks a modern perlish way to manage sounds.</p>
+<p>An SDLx::Sound object can load sounds from filesystem, play it, adjust this loudness level or stops the sound. </p>
+<p>Each sound will play in the next available channel, so it can be handled isolately.</p>
+
+</div>
+<h1 id="METHODS">METHODS</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="METHODS_CONTENT">
+
+</div>
+<h2 id="new">new</h2>
+<div id="new_CONTENT">
+<p>Returns a new instance of SDLx::Sound</p>
+
+</div>
+<h2 id="load">load</h2>
+<div id="load_CONTENT">
+
+</div>
+<h2 id="play">play</h2>
+<div id="play_CONTENT">
+
+</div>
+<h2 id="loud">loud</h2>
+<div id="loud_CONTENT">
+
+</div>
+<h2 id="stop">stop</h2>
+<div id="stop_CONTENT">
+
+</div>
+<h1 id="AUTHOR">AUTHOR</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="AUTHOR_CONTENT">
+<p>Monsenhor, <code>&lt;ricardo.filipo at mitologica.com.br&gt;</code></p>
+
+</div>
+<h1 id="BUGS">BUGS</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="BUGS_CONTENT">
+<p>Please report any bugs or feature requests to <code>bug-sdlx-sound at rt.cpan.org</code>, or through
+the web interface at <a href="http://rt.cpan.org/NoAuth/ReportBug.html?Queue=SDLx-Sound">http://rt.cpan.org/NoAuth/ReportBug.html?Queue=SDLx-Sound</a>.  I will be notified, and then you'll
+automatically be notified of progress on your bug as I make changes.</p>
+
+
+
+
+
+
+
+
+
+
+
+</div>
+<h1 id="SUPPORT">SUPPORT</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="SUPPORT_CONTENT">
+<p>You can find documentation for this module with the perldoc command.</p>
+<pre>    perldoc SDLx::Sound
+
+
+
+
+</pre>
+<p>You can also look for information at:</p>
+<dl>
+       <dt>* RT: CPAN's request tracker</dt>
+       <dd>
+               <p><a href="http://rt.cpan.org/NoAuth/Bugs.html?Dist=SDLx-Sound">http://rt.cpan.org/NoAuth/Bugs.html?Dist=SDLx-Sound</a></p>
+       </dd>
+       <dt>* AnnoCPAN: Annotated CPAN documentation</dt>
+       <dd>
+               <p><a href="http://annocpan.org/dist/SDLx-Sound">http://annocpan.org/dist/SDLx-Sound</a></p>
+       </dd>
+       <dt>* CPAN Ratings</dt>
+       <dd>
+               <p><a href="http://cpanratings.perl.org/d/SDLx-Sound">http://cpanratings.perl.org/d/SDLx-Sound</a></p>
+       </dd>
+       <dt>* Search CPAN</dt>
+       <dd>
+               <p><a href="http://search.cpan.org/dist/SDLx-Sound/">http://search.cpan.org/dist/SDLx-Sound/</a></p>
+       </dd>
+</dl>
+
+
+
+
+
+</div>
+<h1 id="ACKNOWLEDGEMENTS">ACKNOWLEDGEMENTS</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="ACKNOWLEDGEMENTS_CONTENT">
+
+
+
+
+
+</div>
+<h1 id="LICENSE_AND_COPYRIGHT">LICENSE AND COPYRIGHT</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="LICENSE_AND_COPYRIGHT_CONTENT">
+<p>Copyright 2010 Monsenhor.</p>
+<p>This program is free software; you can redistribute it and/or modify it
+under the terms of either: the GNU General Public License as published
+by the Free Software Foundation; or the Artistic License.</p>
+<p>See http://dev.perl.org/licenses/ for more information.</p>
+
+
+
+
+
+</div>
+</div>
\ No newline at end of file
index b1bd058..1cb7575 100644 (file)
@@ -20,6 +20,8 @@
 <li><a href="#ticks_per_frame_integer">ticks_per_frame( $integer )</a></li>
 <li><a href="#type">type()</a></li>
 <li><a href="#type_string">type( $string )</a></li>
+<li><a href="#set_sequences_string_gt_x1_y1_x2_y2">set_sequences( $string =&gt; [ [ $x1, $y1 ], [ $x2, $y2 ], ... ], ... )</a></li>
+<li><a href="#sequence_string">sequence( $string )</a></li>
 <li><a href="#next">next()</a></li>
 <li><a href="#previous">previous()</a></li>
 <li><a href="#reset">reset()</a></li>
@@ -184,6 +186,14 @@ the next frame during autoplay (i.e. between calls to start() and stop()).</p>
 frame in the strip. See the type() method below for information on
 available looping types.</p>
        </dd>
+       <dt>* sequences =&gt; { $string =&gt; [ [ $x1, $y1 ], [ $x2, $y2 ], ... ], ... }</dt>
+       <dd>
+               <p>Uses the supplied hashref to define named sequences of frames.</p>
+       </dd>
+       <dt>* sequence =&gt; $string</dt>
+       <dd>
+               <p>Uses $string to set the current sequence.</p>
+       </dd>
 </dl>
 
 </div>
@@ -261,6 +271,18 @@ to be lowercase.</p>
 <p>Default value is 'circular'.</p>
 
 </div>
+<h2 id="set_sequences_string_gt_x1_y1_x2_y2">set_sequences( $string =&gt; [ [ $x1, $y1 ], [ $x2, $y2 ], ... ], ... )</h2>
+<div id="set_sequences_string_gt_x1_y1_x2_y2_">
+<p>Uses the supplied hashref to define named sequences of frames. Replaces any
+previously defined sequences.</p>
+
+</div>
+<h2 id="sequence_string">sequence( $string )</h2>
+<div id="sequence_string_CONTENT">
+<p>Uses $string to set the current sequence. Goes to the first frame in the
+sequence and resets the loop counter.</p>
+
+</div>
 <h2 id="next">next()</h2>
 <div id="next_CONTENT">
 <p>Goes to the next frame in the strip. Calling this method will also reset
index e2b5196..9a7db49 100644 (file)
@@ -26,6 +26,7 @@
 <li><a href="#update">update</a></li>
 <li><a href="#draw_rect">draw_rect</a></li>
 <li><a href="#draw_line">draw_line</a></li>
+<li><a href="#draw_gfx_text">draw_gfx_text</a></li>
 </ul>
 </li>
 <li><a href="#AUTHOR">AUTHOR</a>
@@ -225,6 +226,27 @@ This is useful when the surface you have isn't an <code>SDLx::Surface</code>, bu
 <p>Returns $self</p>
 
 </div>
+<h2 id="draw_gfx_text">draw_gfx_text</h2>
+<div id="draw_gfx_text_CONTENT">
+<p>Draw text using gfx (not pretty but fast) at give vector, color.</p>
+<pre> $surf-&gt;draw_gfx_text( [0,0], 0xffffffff, &quot;fooo&quot;);
+ $surf-&gt;draw_gfx_text( [10,10], [20,20,20,20], &quot;fooo&quot;);
+
+</pre>
+<p>You can also set the gfx font but passing a hash reference as shown below.</p>
+<pre> my $f = '';
+ open( my $FH, '&lt;', 'test/data/5x7.fnt');
+ binmode ($FH);
+ read($FH, $f, 4096);
+ close ($FH);
+
+ my $font =  {data=&gt;$f, cw =&gt; 5, ch =&gt; 7};
+ $surf-&gt;draw_gfx_text( [0,0], 0xffffffff, &quot;fooo&quot;, $font );
+
+</pre>
+<p>Returns $self</p>
+
+</div>
 <h1 id="AUTHOR">AUTHOR</h1><p><a href="#TOP" class="toplink">Top</a></p>
 <div id="AUTHOR_CONTENT">
 <pre> kthakore 
index 605e3bc..f8096f2 100644 (file)
@@ -1,2 +1,2 @@
 <div class="pod">
-<h1>Documentation (latest development branch)</h1></table></div>
+<h1>Documentation (latest development branch)</h1><table style="margin-left: 0px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Core</strong></td></tr><tr><td><img src="assets/SDL_thumb.png" alt="thumb" /></td><td><a href="SDL.html">SDL</a></td><td>- Simple DirectMedia Layer for Perl</td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDL-Credits.html">SDL::Credits</a></td><td>- Authors and contributors of the SDL Perl project</td></tr><tr><td><img src="assets/bubble-4-mini.png" alt="thumb" /></td><td><a href="SDL-Deprecated.html">SDL::Deprecated</a></td><td>- Log of Deprecated items per release</td></tr><tr><td><img src="assets/bubble-4-mini.png" alt="thumb" /></td><td><a href="SDL-Time.html">SDL::Time</a></td><td>- An SDL Perl extension for managing timers</td></tr></table><table style="margin-left: 30px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Audio</strong></td></tr><tr><td><img src="assets/bubble-7-mini.png" alt="thumb" /></td><td><a href="SDL-Audio.html">SDL::Audio</a></td><td>- SDL Bindings for Audio</td></tr></table><table style="margin-left: 60px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Structure</strong></td></tr><tr><td><img src="assets/bubble-4-mini.png" alt="thumb" /></td><td><a href="SDL-AudioCVT.html">SDL::AudioCVT</a></td><td>- Audio Conversion Structure</td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDL-AudioSpec.html">SDL::AudioSpec</a></td><td>- SDL Bindings for structure SDL::AudioSpec</td></tr></table><table style="margin-left: 30px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">CDROM</strong></td></tr><tr><td><img src="assets/bubble-6-mini.png" alt="thumb" /></td><td><a href="SDL-CDROM.html">SDL::CDROM</a></td><td>- SDL Bindings for the CDROM device</td></tr></table><table style="margin-left: 60px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Structure</strong></td></tr><tr><td><img src="assets/bubble-7-mini.png" alt="thumb" /></td><td><a href="SDL-CD.html">SDL::CD</a></td><td>- SDL Bindings for structure SDL_CD</td></tr><tr><td><img src="assets/bubble-4-mini.png" alt="thumb" /></td><td><a href="SDL-CDTrack.html">SDL::CDTrack</a></td><td>- SDL Bindings for structure SDL_CDTrack</td></tr></table><table style="margin-left: 30px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Events</strong></td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDL-Events.html">SDL::Events</a></td><td>- Bindings to the Events Category in SDL API</td></tr></table><table style="margin-left: 60px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Structure</strong></td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDL-Event.html">SDL::Event</a></td><td>- General event structure</td></tr></table><table style="margin-left: 30px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Joystick</strong></td></tr><tr><td><img src="assets/bubble-7-mini.png" alt="thumb" /></td><td><a href="SDL-Joystick.html">SDL::Joystick</a></td><td>- SDL Bindings for the Joystick device</td></tr></table><table style="margin-left: 30px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Mouse</strong></td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDL-Mouse.html">SDL::Mouse</a></td><td>- SDL Bindings for the Mouse device</td></tr></table><table style="margin-left: 60px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Structure</strong></td></tr><tr><td><img src="assets/bubble-6-mini.png" alt="thumb" /></td><td><a href="SDL-Cursor.html">SDL::Cursor</a></td><td>- Mouse cursor structure</td></tr></table><table style="margin-left: 30px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Structure</strong></td></tr><tr><td><img src="assets/bubble-4-mini.png" alt="thumb" /></td><td><a href="SDL-Version.html">SDL::Version</a></td><td>- SDL Bindings for structure SDL_Version</td></tr></table><table style="margin-left: 30px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Video</strong></td></tr><tr><td><img src="assets/Video_thumb.png" alt="thumb" /></td><td><a href="SDL-Video.html">SDL::Video</a></td><td>- Bindings to the video category in SDL API</td></tr></table><table style="margin-left: 60px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Structure</strong></td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDL-Color.html">SDL::Color</a></td><td>- Format independent color description</td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDL-Overlay.html">SDL::Overlay</a></td><td>- YUV Video overlay</td></tr><tr><td><img src="assets/bubble-7-mini.png" alt="thumb" /></td><td><a href="SDL-Palette.html">SDL::Palette</a></td><td>- Color palette for 8-bit pixel formats </td></tr><tr><td><img src="assets/bubble-7-mini.png" alt="thumb" /></td><td><a href="SDL-PixelFormat.html">SDL::PixelFormat</a></td><td>- Stores surface format information</td></tr><tr><td><img src="assets/bubble-2-mini.png" alt="thumb" /></td><td><a href="SDL-Rect.html">SDL::Rect</a></td><td>- Defines a rectangular area</td></tr><tr><td><img src="assets/bubble-6-mini.png" alt="thumb" /></td><td><a href="SDL-Surface.html">SDL::Surface</a></td><td>- Graphic surface structure</td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDL-VideoInfo.html">SDL::VideoInfo</a></td><td>- Video Target Information </td></tr></table><br /><table style="margin-left: 0px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Cookbook</strong></td></tr><tr><td><img src="assets/bubble-1-mini.png" alt="thumb" /></td><td><a href="SDL-Cookbook.html">SDL::Cookbook</a></td><td></td></tr><tr><td><img src="assets/bubble-7-mini.png" alt="thumb" /></td><td><a href="SDL-Cookbook-OpenGL.html">SDL::Cookbook::OpenGL</a></td><td>- Using SDL with OpenGL</td></tr><tr><td><img src="assets/bubble-6-mini.png" alt="thumb" /></td><td><a href="SDL-Cookbook-PDL.html">SDL::Cookbook::PDL</a></td><td></td></tr></table><br /><table style="margin-left: 0px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Extension</strong></td></tr><tr><td><img src="assets/bubble-7-mini.png" alt="thumb" /></td><td><a href="SDLx-App.html">SDLx::App</a></td><td>- a SDL perl extension</td></tr><tr><td><img src="assets/bubble-6-mini.png" alt="thumb" /></td><td><a href="SDLx-Layer.html">SDLx::Layer</a></td><td>- Extension ...</td></tr><tr><td><img src="assets/bubble-4-mini.png" alt="thumb" /></td><td><a href="SDLx-LayerManager.html">SDLx::LayerManager</a></td><td>- Extension for managing layers in a 2D world</td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDLx-Rect.html">SDLx::Rect</a></td><td>- SDL extension for storing and manipulating rectangular coordinates</td></tr><tr><td><img src="assets/bubble-2-mini.png" alt="thumb" /></td><td><a href="SDLx-SFont.html">SDLx::SFont</a></td><td>- Extension making fonts out of images and printing them</td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDLx-Sprite.html">SDLx::Sprite</a></td><td>- interact with images quick and easily in SDL</td></tr><tr><td><img src="assets/bubble-7-mini.png" alt="thumb" /></td><td><a href="SDLx-Sprite-Animated.html">SDLx::Sprite::Animated</a></td><td>- create animated SDL sprites easily!</td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDLx-Surface.html">SDLx::Surface</a></td><td>- Graphic surface matrix extension</td></tr></table><br /><table style="margin-left: 0px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">GFX</strong></td></tr><tr><td><img src="assets/bubble-6-mini.png" alt="thumb" /></td><td><a href="SDL-GFX-Framerate.html">SDL::GFX::Framerate</a></td><td>- framerate calculating functions</td></tr><tr><td><img src="assets/bubble-6-mini.png" alt="thumb" /></td><td><a href="SDL-GFX-Primitives.html">SDL::GFX::Primitives</a></td><td>- basic drawing functions</td></tr></table><table style="margin-left: 30px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Structure</strong></td></tr><tr><td><img src="assets/bubble-2-mini.png" alt="thumb" /></td><td><a href="SDL-GFX-FPSManager.html">SDL::GFX::FPSManager</a></td><td>- data structure used by SDL::GFX::Framerate</td></tr></table><br /><table style="margin-left: 0px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Image</strong></td></tr><tr><td><img src="assets/bubble-6-mini.png" alt="thumb" /></td><td><a href="SDL-Image.html">SDL::Image</a></td><td>- Bindings for the SDL_Image library</td></tr></table><br /><table style="margin-left: 0px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Mixer</strong></td></tr><tr><td><img src="assets/bubble-6-mini.png" alt="thumb" /></td><td><a href="SDL-Mixer.html">SDL::Mixer</a></td><td>- Sound and music functions</td></tr><tr><td><img src="assets/bubble-7-mini.png" alt="thumb" /></td><td><a href="SDL-Mixer-Channels.html">SDL::Mixer::Channels</a></td><td>- SDL::Mixer channel functions and bindings</td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDL-Mixer-Effects.html">SDL::Mixer::Effects</a></td><td>- sound effect functions</td></tr><tr><td><img src="assets/bubble-2-mini.png" alt="thumb" /></td><td><a href="SDL-Mixer-Groups.html">SDL::Mixer::Groups</a></td><td>- Audio channel group functions</td></tr><tr><td><img src="assets/bubble-1-mini.png" alt="thumb" /></td><td><a href="SDL-Mixer-Music.html">SDL::Mixer::Music</a></td><td>- functions for music</td></tr><tr><td><img src="assets/bubble-7-mini.png" alt="thumb" /></td><td><a href="SDL-Mixer-Samples.html">SDL::Mixer::Samples</a></td><td>- functions for loading sound samples</td></tr></table><table style="margin-left: 30px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Structure</strong></td></tr><tr><td><img src="assets/bubble-2-mini.png" alt="thumb" /></td><td><a href="SDL-Mixer-MixChunk.html">SDL::Mixer::MixChunk</a></td><td>- SDL Bindings for structure SDL_MixChunk</td></tr><tr><td><img src="assets/bubble-4-mini.png" alt="thumb" /></td><td><a href="SDL-Mixer-MixMusic.html">SDL::Mixer::MixMusic</a></td><td>- SDL Bindings for structure SDL_MixMusic</td></tr></table><br /><table style="margin-left: 0px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Pango</strong></td></tr><tr><td><img src="assets/bubble-1-mini.png" alt="thumb" /></td><td><a href="SDL-Pango.html">SDL::Pango</a></td><td>- Text rendering engine</td></tr></table><table style="margin-left: 30px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Structure</strong></td></tr><tr><td><img src="assets/bubble-4-mini.png" alt="thumb" /></td><td><a href="SDL-Pango-Context.html">SDL::Pango::Context</a></td><td>- Context object for SDL::Pango</td></tr></table><br /><table style="margin-left: 0px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">TODO</strong></td></tr><tr><td><img src="assets/bubble-6-mini.png" alt="thumb" /></td><td><a href="SDL-MPEG.html">SDL::MPEG</a></td><td>- a SDL perl extension</td></tr><tr><td><img src="assets/bubble-6-mini.png" alt="thumb" /></td><td><a href="SDL-SMPEG.html">SDL::SMPEG</a></td><td>- a SDL perl extension</td></tr></table><table style="margin-left: 60px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">MultiThread</strong></td></tr><tr><td><img src="assets/bubble-2-mini.png" alt="thumb" /></td><td><a href="SDL-MultiThread.html">SDL::MultiThread</a></td><td>- Bindings to the MultiThread category in SDL API</td></tr></table><table style="margin-left: 60px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Structure</strong></td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDL-RWOps.html">SDL::RWOps</a></td><td>- SDL Bindings to SDL_RWOPs</td></tr></table><table style="margin-left: 30px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">GFX</strong></td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDL-GFX-BlitFunc.html">SDL::GFX::BlitFunc</a></td><td>- blitting functions</td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDL-GFX-ImageFilter.html">SDL::GFX::ImageFilter</a></td><td>- image filtering functions</td></tr><tr><td><img src="assets/bubble-1-mini.png" alt="thumb" /></td><td><a href="SDL-GFX-Rotozoom.html">SDL::GFX::Rotozoom</a></td><td>- rotation and zooming functions for surfaces</td></tr></table><br /><table style="margin-left: 0px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">TTF</strong></td></tr><tr><td><img src="assets/bubble-6-mini.png" alt="thumb" /></td><td><a href="SDL-TTF.html">SDL::TTF</a></td><td>- True Type Font functions (libfreetype)</td></tr></table><table style="margin-left: 30px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Structure</strong></td></tr><tr><td><img src="assets/bubble-2-mini.png" alt="thumb" /></td><td><a href="SDL-TTF-Font.html">SDL::TTF::Font</a></td><td>- Font object type for SDL_ttf</td></tr></table><br /><table style="margin-left: 0px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">Tutorials</strong></td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDL-Tutorial.html">SDL::Tutorial</a></td><td>- introduction to Perl SDL</td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDL-Tutorial-Animation.html">SDL::Tutorial::Animation</a></td><td></td></tr><tr><td><img src="assets/bubble-6-mini.png" alt="thumb" /></td><td><a href="SDL-Tutorial-LunarLander.html">SDL::Tutorial::LunarLander</a></td><td>- a small tutorial on Perl SDL</td></tr></table><br /><table style="margin-left: 0px; margin-top: 5px"><tr><td colspan="3"><strong style="font-size: 14px">UNCATEGORIZED</strong></td></tr><tr><td><img src="assets/bubble-7-mini.png" alt="thumb" /></td><td><a href="SDLx-Controller.html">SDLx::Controller</a></td><td>- Handles the loops for event, movement and rendering</td></tr><tr><td><img src="assets/bubble-5-mini.png" alt="thumb" /></td><td><a href="SDLx-Sound.html">SDLx::Sound</a></td><td></td></tr></table></div>