sub skip_tests { return "Tk needs a DISPLAY (set one today, okay?)" unless ( (defined $ENV{DISPLAY} and length $ENV{DISPLAY}) or $^O eq "MSWin32" ); my $test_name = shift; if ($test_name eq "k_signals_rerun" and $^O eq "MSWin32") { return "This test crashes Perl when run with Tk on $^O"; } return "Tk tests require the Tk module" if do { eval "use Tk"; $@ }; my $m = eval { Tk::MainWindow->new() }; if ($@) { my $why = $@; $why =~ s/ at .*//; return "Tk couldn't be initialized: $why"; } return; }


POE::Loop::Tk - a bridge that allows POE to be driven by Tk


See POE::Loop.

  use Tk;
  use POE;

  # Rest of your program here.


POE::Loop::Tk replaces POE's internal event loop with the Tk module. This allows programs to use both POE and Tk at the same time.

POE::Loop::Tk implements the interface documented in POE::Loop. Therefore it has no documentation of its own. Please see POE::Loop for more details.

POE::Loop::Tk is one of two versions of the Tk event loop bridge. The other, POE::Loop::TkActiveState accommodates behavior differences in ActiveState's build of Tk. Both versions share common code in POE::Loop::TkCommon. POE::Loop::Tk dynamically selects the appropriate event loop bridge based on the runtime environment.


POE, POE::Loop, Tk, POE::Loop::TkCommon, POE::Loop::PerlSignals.


POE::Loop::Tk is Copyright 1998-2013 Rocco Caputo. All rights reserved. POE::Loop::Tk is free software; you may redistribute it and/or modify it under the same terms as Perl itself.