Updated links
[sdlgit/SDL-Site.git] / pages / index.html-inc
index e7261d5..fa7bf74 100644 (file)
@@ -1,6 +1,93 @@
-<div class="blog">
-<h1 id="NAME">
-Once in a while .... (set_event_filter)
-</h1>
-<div class="CONTENT">
-<div style="text-align: right;"><i> <br />Once in a while <br />Things just work! <br /></i><br /></div><br /><br />So I have been hacking for a while on SDL::Events::set_event_filter. The code below is an example usage. The magic behind this is <a href="http://github.com/kthakore/SDL_perl/blob/1712fe42d62c2a3e382e6bf91366eb2ce9d2f5f4/src/Core/Events.xs">here</a> <br /><br /><pre><a href="" name="line1"> 1</a> <span style="color: #444444;">#!/usr/bin/perl -w<br /><a href="" name="line2"> 2</a> </span><b>use</b> strict;<br /><a href="" name="line3"> 3</a> <b>use</b> warnings;<br /><a href="" name="line4"> 4</a> <b>use</b> SDL v2.3; <span style="color: #444444;">#Require the redesign branch<br /><a href="" name="line5"> 5</a> </span><b>use</b> SDL::Video;<br /><a href="" name="line6"> 6</a> <b>use</b> SDL::Event;<br /><a href="" name="line7"> 7</a> <b>use</b> SDL::Events;<br /><a href="" name="line8"> 8</a> <br /><a href="" name="line9"> 9</a> SDL::init<span style="color: #4444ff;"><b>(</b></span>SDL_INIT_VIDEO<span style="color: #4444ff;"><b>)</b></span>;<br /><a href="" name="line10">10</a> <b>my</b> <span style="color: #2040a0;">$display</span> = SDL::Video::set_video_mode<span style="color: #4444ff;"><b>(</b></span>640,480,32, SDL_SWSURFACE <span style="color: #4444ff;"><b>)</b></span>;<br /><a href="" name="line11">11</a> <b>my</b>  <span style="color: #2040a0;">$event</span> = SDL::Event-&gt;<b>new</b><span style="color: #4444ff;"><b>(</b></span><span style="color: #4444ff;"><b>)</b></span>;<br /><a href="" name="line12">12</a> <br /><a href="" name="line13">13</a> <span style="color: #444444;">#This filters out all ActiveEvents<br /><a href="" name="line14">14</a> </span><b>my</b> <span style="color: #2040a0;">$filter</span> = sub <span style="color: #4444ff;"><b>{</b></span> <br /><a href="" name="line15">15</a>      <b>my</b> <span style="color: #4444ff;"><b>(</b></span><span style="color: #2040a0;">$e</span>, <span style="color: #2040a0;">$type</span><span style="color: #4444ff;"><b>)</b></span> = <span style="color: #4444ff;"><b>(</b></span><span style="color: #2040a0;">$_</span><span style="color: #4444ff;"><b>[</b></span>0<span style="color: #4444ff;"><b>]</b></span>, <span style="color: #2040a0;">$_</span><span style="color: #4444ff;"><b>[</b></span>0<span style="color: #4444ff;"><b>]</b></span>-&gt;type<span style="color: #4444ff;"><b>)</b></span>; <br /><a href="" name="line16">16</a>      <b>if</b><span style="color: #4444ff;"><b>(</b></span><span style="color: #2040a0;">$type</span> == SDL_ACTIVEEVENT<span style="color: #4444ff;"><b>)</b></span><span style="color: #4444ff;"><b>{</b></span> <b>return</b> 0 <span style="color: #4444ff;"><b>}</b></span> <br /><a href="" name="line17">17</a>      <b>elsif</b><span style="color: #4444ff;"><b>(</b></span><span style="color: #2040a0;">$type</span> == SDL_MOUSEBUTTONDOWN &amp;&amp; <span style="color: #2040a0;">$e</span>-&gt;button_button == 1<span style="color: #4444ff;"><b>)</b></span><span style="color: #4444ff;"><b>{</b></span> <b>return</b> 0 <span style="color: #4444ff;"><b>}</b></span><br /><a href="" name="line18">18</a>      <b>else</b> <span style="color: #4444ff;"><b>{</b></span> <b>return</b> 1; <span style="color: #4444ff;"><b>}</b></span><br /><a href="" name="line19">19</a>       <span style="color: #4444ff;"><b>}</b></span>;<br /><a href="" name="line20">20</a> <br /><a href="" name="line21">21</a> SDL::Events::set_event_filter<span style="color: #4444ff;"><b>(</b></span><span style="color: #2040a0;">$filter</span><span style="color: #4444ff;"><b>)</b></span>;<br /><a href="" name="line22">22</a> <br /><a href="" name="line23">23</a> <b>while</b><span style="color: #4444ff;"><b>(</b></span>1<span style="color: #4444ff;"><b>)</b></span><br /><a href="" name="line24">24</a> <span style="color: #4444ff;"><b>{</b></span><br /><a href="" name="line25">25</a> <br /><a href="" name="line26">26</a>   SDL::Events::pump_events<span style="color: #4444ff;"><b>(</b></span><span style="color: #4444ff;"><b>)</b></span>;<br /><a href="" name="line27">27</a>   <b>if</b><span style="color: #4444ff;"><b>(</b></span>SDL::Events::poll_event<span style="color: #4444ff;"><b>(</b></span><span style="color: #2040a0;">$event</span><span style="color: #4444ff;"><b>)</b></span><span style="color: #4444ff;"><b>)</b></span><br /><a href="" name="line28">28</a>   <span style="color: #4444ff;"><b>{</b></span><br /><a href="" name="line29">29</a> <br /><a href="" name="line30">30</a>   <b>if</b><span style="color: #4444ff;"><b>(</b></span>  <span style="color: #2040a0;">$event</span>-&gt;type == SDL_ACTIVEEVENT<span style="color: #4444ff;"><b>)</b></span><br /><a href="" name="line31">31</a>  <span style="color: #4444ff;"><b>{</b></span><br /><a href="" name="line32">32</a>  <span style="color: brown;"><b>print</b></span> <span style="color: green;">"Hello Mouse!!!<span style="color: #77dd77;">\n</span>"</span> <b>if</b> <span style="color: #4444ff;"><b>(</b></span><span style="color: #2040a0;">$event</span>-&gt;active_gain &amp;&amp; <span style="color: #4444ff;"><b>(</b></span><span style="color: #2040a0;">$event</span>-&gt;active_state == SDL_APPMOUSEFOCUS<span style="color: #4444ff;"><b>)</b></span> <span style="color: #4444ff;"><b>)</b></span>;<br /><a href="" name="line33">33</a>  <span style="color: brown;"><b>print</b></span> <span style="color: green;">"Bye Mouse!!!<span style="color: #77dd77;">\n</span>"</span> <b>if</b> <span style="color: #4444ff;"><b>(</b></span>!<span style="color: #2040a0;">$event</span>-&gt;active_gain &amp;&amp; <span style="color: #4444ff;"><b>(</b></span><span style="color: #2040a0;">$event</span>-&gt;active_state == SDL_APPMOUSEFOCUS<span style="color: #4444ff;"><b>)</b></span> <span style="color: #4444ff;"><b>)</b></span>;<br /><a href="" name="line34">34</a>         <span style="color: #4444ff;"><b>}</b></span><br /><a href="" name="line35">35</a>   <b>if</b><span style="color: #4444ff;"><b>(</b></span> <span style="color: #2040a0;">$event</span>-&gt;type == SDL_MOUSEBUTTONDOWN<span style="color: #4444ff;"><b>)</b></span><br /><a href="" name="line36">36</a>    <span style="color: #4444ff;"><b>{</b></span><br /><a href="" name="line37">37</a>  <b>my</b> <span style="color: #4444ff;"><b>(</b></span><span style="color: #2040a0;">$x</span>, <span style="color: #2040a0;">$y</span>, <span style="color: #2040a0;">$but</span> <span style="color: #4444ff;"><b>)</b></span> = <span style="color: #4444ff;"><b>(</b></span><span style="color: #2040a0;">$event</span>-&gt;button_x, <span style="color: #2040a0;">$event</span>-&gt;button_y, <span style="color: #2040a0;">$event</span>-&gt;button_button<span style="color: #4444ff;"><b>)</b></span>;<br /><a href="" name="line38">38</a>  <span style="color: brown;"><b>warn</b></span> <span style="color: green;">"<span style="color: #2040a0;">$but</span> CLICK!!! at <span style="color: #2040a0;">$x</span> and <span style="color: #2040a0;">$y</span> <span style="color: #77dd77;">\n</span>"</span>;<br /><a href="" name="line39">39</a>  <span style="color: #4444ff;"><b>}</b></span><br /><a href="" name="line40">40</a> <br /><a href="" name="line41">41</a>       <b>last</b> <b>if</b><span style="color: #4444ff;"><b>(</b></span><span style="color: #2040a0;">$event</span>-&gt;type == SDL_QUIT<span style="color: #4444ff;"><b>)</b></span>;<br /><a href="" name="line42">42</a>   <span style="color: #4444ff;"><b>}</b></span><br /><a href="" name="line43">43</a> <span style="color: #4444ff;"><b>}</b></span><br /><a href="" name="line44">44</a> SDL::quit<span style="color: #4444ff;"><b>(</b></span><span style="color: #4444ff;"><b>)</b></span>;&nbsp;</pre><pre>&nbsp;</pre><pre>&nbsp;</pre><pre>Tinker with $filter and look at perldoc lib/SDL/pods/Event.pod.&nbsp;</pre><pre>&nbsp;</pre><pre>Have fun,</pre><pre>--yapgh</pre><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3102167581424744259-2301663122914111362?l=yapgh.blogspot.com'/></div></div>
\ No newline at end of file
+<div class="pod">
+<!-- INDEX START -->
+<h3 id="TOP">Index</h3>
+
+<ul><li><a href="#Simple_DirectMedia_Library_Bindings_">Simple DirectMedia Library Bindings for Perl</a>
+<ul><li><a href="#Welcome">Welcome</a>
+<ul><li><a href="#Getting_Started">Getting Started</a></li>
+<li><a href="#Contribute">Contribute</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li><a href="#Latest_News">Latest News</a>
+<ul><li><a href="#December_26th_2010">December 26th 2010</a>
+<ul><li><a href="#CPAN_Release_SDL_2_524">CPAN Release SDL 2.524</a></li>
+<li><a href="#SDL_Manual_Writing_Games_with_SDL_Pe">SDL Manual: Writing Games with SDL Perl</a></li>
+<li><a href="#Active_Development">Active Development</a>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul><hr />
+<!-- INDEX END -->
+
+<h1 id="Simple_DirectMedia_Library_Bindings_">Simple DirectMedia Library Bindings for Perl</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="Simple_DirectMedia_Library_Bindings_-2">
+
+</div>
+<h2 id="Welcome">Welcome</h2>
+<div id="Welcome_CONTENT">
+<p>SDL Perl are a set of bindings to the Simple DirectMedia Layer (SDL).</p>
+<p>'Simple DirectMedia Layer is a cross-platform multimedia library designed to provide low level access to audio, keyboard, mouse, joystick, 
+3D hardware via OpenGL, and 2D video framebuffer. It is used by MPEG playback software, emulators, and many popular games, including the 
+award winning Linux port of &quot;Civilization: Call To Power.&quot;' --<cite>www.libsdl.org</cite></p>
+<p>SDL Perl is an active and exciting project with many facets. Explore this website to learn more. </p>
+
+</div>
+<h3 id="Getting_Started">Getting Started</h3>
+<div id="Getting_Started_CONTENT">
+<p>A new SDL::Manual is being prepared for new users. In the mean time take a look at the documentation, ask for help on the mailing lists or irc channel, and see the examples in the source code.</p>
+
+</div>
+<h3 id="Contribute">Contribute</h3>
+<div id="Contribute_CONTENT">
+<dl>
+       <dt>IRC</dt>
+       <dd>
+               <p>Talk to us on channel <a href="http://widget.mibbit.com/?settings=89f140215d60860684cee2f6a917607f&amp;server=irc.perl.org&amp;channel=%23sdl">#sdl</a> .</p>
+       </dd>
+       <dt>Mailing List</dt>
+       <dd>
+               <p>Send us an email at <a href="mailto:sdl-devel@perl.org">mailing list</a>.</p>
+               <p>Our archives are located at <a href="http://www.mail-archive.com/sdl-devel@perl.org/">mail-archive</a> and  <a href="http://www.nntp.perl.org/group/perl.sdl.devel">nntp.perl</a>.</p>
+               <p>We also have a <a href="http://www.nntp.perl.org/rss/perl.sdl.devel.rdf">rssfeed</a>.</p>
+               <p>For help send an empty email to <a href="mailto:sdl-devel-help@perl.org">sdl-devel-help@perl.org</a>.</p>
+               <p>To subscribe to the mailing lists send an empty email to <a href="mailto:sdl-devel-subscribe@perl.org">sdl-devel-subscribe@perl.org</a>.</p>
+               <p>To unsubscribe send an empty email to <a href="mailto:sdl-devel-unsubscribe@perl.org">sdl-devel-unsubscribe@perl.org</a>.</p>
+       </dd>
+       <dt>Testing and Development</dt>
+       <dd>
+               <p>Join us on the github <a href="http://github.com/PerlGameDev/SDL">site</a> to get started on making and grabbing tickets. </p>
+               <p>To begin testing read <a href="http://sdlperl.ath.cx/projects/SDLPerl/wiki/Testing">the wiki page on testing</a>.</p>
+       </dd>
+</dl>
+
+</div>
+<h1 id="Latest_News">Latest News</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="Latest_News_CONTENT">
+
+</div>
+<h2 id="December_26th_2010">December 26th 2010</h2>
+<div id="December_26th_2010_CONTENT">
+
+</div>
+<h3 id="CPAN_Release_SDL_2_524">CPAN Release SDL 2.524</h3>
+<div id="CPAN_Release_SDL_2_524_CONTENT">
+<p><a href="http://search.cpan.org/search?query=SDL&amp;mode=module">SDL 2.524</a> is on CPAN! The new API has many changes and much more improvements. So check it out.</p>
+<p>SDL Perl at v2.2.6 on CPAN is the last of its kind which will have the old API.</p>
+
+</div>
+<h3 id="SDL_Manual_Writing_Games_with_SDL_Pe">SDL Manual: Writing Games with SDL Perl</h3>
+<div id="SDL_Manual_Writing_Games_with_SDL_Pe-2">
+<p>The grant <a href="http://news.perlfoundation.org/2010/08/2010q3-grant-proposal-manual-f.html">proposal</a> has been accepted by <a href="http://news.perlfoundation.org/2010/08/accepted-grants-for-2010q3.html">The Perl Foundation</a>. SDL_Manual is in continous development on <a href="http://github.com/PerlGameDev/SDL_Manual">github</a>.</p>
+<p>More up to date versions of the books are also available in <a href="https://github.com/PerlGameDev/SDL_Manual/blob/master/dist/SDL_Manual.html">HTML</a> and <a href="https://github.com/PerlGameDev/SDL_Manual/blob/master/dist/SDL_Manual.pdf">PDF</a> formats. </p>
+
+</div>
+<h3 id="Active_Development">Active Development</h3>
+<div id="Active_Development_CONTENT">
+<p>SDL Perl is being actively developed to v3.0. We are adding many new SDLx::* modules to provide a more Perly interface to SDL. Please review, request or even hack the code. Talk to us on the irc channel or mailing lists.</p>
+
+</div>
+</div>
\ No newline at end of file