I have been looking for a Curses interface for long time. This one fits my purposes perfectly, and it is very well organized and documented.
This module has been a pleasure to work with. Some rough edges exist and doing some special things were a challenge—but far less of a challenge than working with the abominable Curses directly (no offense meant to Curses.pm—curses is just a mess). I've been directly in most of the code (even submitted a patch) and it's decent. No major complaints from me.
There is sufficient documentation and examples to come up and start using the generic features of Curses-UI quickly. Read through the perldocs on callbacks and find any attributes that aren't immediately covered in the examples.
As mentioned in another review, there's not much layout support; so you'll be counting offsets (unless somebody makes a layout object).
Curses::UI was easy to install in cygwin. I also like the fact that this has been made POE friendly (Curses::UI::POE).
Look at the source of, eg, Curses::UI::Dialog::Question, for the shortcomings in this module - it is not possible to just throw a few widgets together to make a dialog. This module does nothing to avoid the user from having to do fiddly layout and offset calculations in the code that makes new dialogs, and regrettably the "Question" dialog is not extensible to exchange the default TextEntry widget with another.
I found this module has an enticing looking interface but was upset when I found it next to useless trying to use it. Next I'm trying Newt.
I found your work very useful.
But there's something wrong with UI::Dialog::FileBrowser. While using $cui->loadfilebrowser(), it warn "undefined value in string at line 414 of FileBrowser.pm". I checked around, and found the call "$filebrowser->value" at line 412 return an empty list ref. ( the call value( ) with empty parameter list rewrite the ListBox object's value list to an empty list ).
1 hidden unhelpful review