NAME
Curses::UI::POE
SYNOPSIS
use Curses::UI::POE;
my $cui = new Curses::UI::POE;
$cui->mainloop
INTRODUCTION
This is a subclass for Curses::UI that enables it to work with POE. It is designed to simply slide over Curses::UI. Keeping the API the same and simply forcing Curses::UI to do all of its event handling via POE, instead of internal to itself. This allows you to use POE behind the scenes for things like networking clients, without Curses::UI breaking your programs' functionality.
TIMERS
The undocumented Curses::UI timers ($cui->timer) will still work, and they will be translated into POE delays. I would suggest not using them, however, as POE's internal alarms and delays are far more robust.
DIALOGS
The Curses::UI::POE dialog methods contain thier own miniature event loop, similar to the way Curses::UI's dialog methods worked. However instead of blocking and polling on readkeys, it incites its own custom miniature POE Event loop until the dialog has completed, and then its result is returned as per the Curses::UI specifications.
SEE ALSO
POE, Curses::UI. Use of this module requires understanding of both the Curses::UI widget set and the POE Framework.
BUGS
The Hello world examples, and other programs that use ONLY the Curses::UI dialogs and no Curses::UI mainloop, currently cause a warning from POE stating that POE::Kernel's run method was never called. However, dialogs work in and out of Curses::UI's mainloop, and use POE instead of blocking.
Hopefully that warning will be fixed soon.
Find any? Send them to me! tag@cpan.org