X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pages%2Fblog-0009.html-inc;h=33ffb482ef71429a15a435965c42ca5ef0b1b757;hb=e785862422f3e827a242fc244bd57b23443887ce;hp=0de3c832cedb93b3d65e9876f3ff91874c42d50a;hpb=f060e594ff77e262c6f1e29a23acb092a1bb7ae2;p=sdlgit%2FSDL-Site.git diff --git a/pages/blog-0009.html-inc b/pages/blog-0009.html-inc index 0de3c83..33ffb48 100644 --- a/pages/blog-0009.html-inc +++ b/pages/blog-0009.html-inc @@ -1,59 +1,20 @@

-Once in a while .... (set_event_filter) +SDL 2.511 + Using SDL for quick visualizations

-

-Once in a while
-Things just work!
-

-

+SDL Perl 2.511 is showing great promises. The initial tests show a great deal of stability. http://search.cpan.org/~kthakore/SDL-2.511/

-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
+ Moreover we are seeing more varied users of SDL Perl.

-
 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 +John.O Writes:
+

+This is for a tool that we'll be providing our dealers... it measures cellular modem signal strengths out in the middle of nowhere, so dealers can evaluate if our products will work in customers' fields. And of course, I'm using Perl/SDL for the graphics... C gets on my nerves.
+
+Our company is http://smartfield.com.
+
+John O.
+
+
+


+

\ No newline at end of file