X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pages%2Fblog-0015.html-inc;h=8978342f5d6ba01117e1a0dda5f9dbe8d8a5a674;hb=a05e5d4499fb58198e463162d0385e8a156e1f03;hp=0de3c832cedb93b3d65e9876f3ff91874c42d50a;hpb=c59d9ab1a32a69fcdb54ab78e21e31ee26d88e7a;p=sdlgit%2FSDL-Site.git diff --git a/pages/blog-0015.html-inc b/pages/blog-0015.html-inc index 0de3c83..8978342 100644 --- a/pages/blog-0015.html-inc +++ b/pages/blog-0015.html-inc @@ -1,59 +1,36 @@

-Once in a while .... (set_event_filter) +SDL Perl Showcase

-

-Once in a while
-Things just work!
-

-

-
-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 here
-
-
 1 #!/usr/bin/perl -w
- 2 use strict;
- 3 use warnings;
- 4 use SDL v2.3; #Require the redesign branch
- 5 use SDL::Video;
- 6 use SDL::Event;
- 7 use SDL::Events;
- 8 
- 9 SDL::init(SDL_INIT_VIDEO);
-10 my $display = SDL::Video::set_video_mode(640,480,32, SDL_SWSURFACE );
-11 my  $event = SDL::Event->new();
-12 
-13 #This filters out all ActiveEvents
-14 my $filter = sub { 
-15      my ($e, $type) = ($_[0], $_[0]->type); 
-16      if($type == SDL_ACTIVEEVENT){ return 0 } 
-17      elsif($type == SDL_MOUSEBUTTONDOWN && $e->button_button == 1){ return 0 }
-18      else { return 1; }
-19       };
-20 
-21 SDL::Events::set_event_filter($filter);
-22 
-23 while(1)
-24 {
-25 
-26   SDL::Events::pump_events();
-27   if(SDL::Events::poll_event($event))
-28   {
-29 
-30   if(  $event->type == SDL_ACTIVEEVENT)
-31  {
-32  print "Hello Mouse!!!\n" if ($event->active_gain && ($event->active_state == SDL_APPMOUSEFOCUS) );
-33  print "Bye Mouse!!!\n" if (!$event->active_gain && ($event->active_state == SDL_APPMOUSEFOCUS) );
-34         }
-35   if( $event->type == SDL_MOUSEBUTTONDOWN)
-36    {
-37  my ($x, $y, $but ) = ($event->button_x, $event->button_y, $event->button_button);
-38  warn "$but CLICK!!! at $x and $y \n";
-39  }
-40 
-41       last if($event->type == SDL_QUIT);
-42   }
-43 }
-44 SDL::quit()
 
 
Tinker with $filter and look at perldoc lib/SDL/pods/Event.pod. 
 
Have fun,
--yapgh
-


-

\ No newline at end of file +
+SDL_Mixer and Effects

+
+

+This demo shows the new work we have finished for SDL_Mixer support in SDL_perl . (FROGGS++)
+
+
+
+
+Get it at: playlist.pl, you need some .ogg files to play in the same directory. Use the down key to go through them.
+
+
+SDL_TTF support

+
+
+

+
+This shows the current work on SDL_TTF support. UTF8 and Uncicode are supported.
+
+See the t/ttf.t test in github SDL_perl.
+
+
+
+Spinner (Destiny Swirl) Arcade Game

+

+
And finally as a proof of concept we have been working a simple arcade game to test our bugs, and scope out our high level bindings. You can get it at the Spinner repo. This wiki page will help you set up for your platforms. 
+


+

\ No newline at end of file