The YaST project has a library called libyui ( https://github.com/libyui , C++) that provides a widget library with multiple backends: Qt, Gtk and also Ncurses.
The ncurses implementation has internally a very powerful wrapper on top of curses that does layout and other things you would only find in GUI toolkits.
I have always dreamed of extracting this code from the ncurses backend and making it a generic library, hopefully with a C API to allow for easy binding but I never got to it.
Closes thing I have found is python specific: http://urwid.org and some Java stuff like http://bmsi.com/tuipeer .
Miguel de Icaza also wrote a very nice toolkit for .NET ( http://www.mono-project.com/docs/tools+libraries/libraries/m... ) and it is also one of the most useful libraries out there, but it is still nowhere as powerful as the YaST one in terms of automatic layouts.
The world needs a good ncurses toolkit. Usability is a camp dominated by graphic designers, but I have never seen users happier than my dad using Quattro Pro in text mode.
Ruby used to ship with ncurses-support built-in but it was fairly low-level and it moved to https://github.com/ruby/curses
look at ranger FIle Manager with VIM shortcuts. The fastest and best File Manager I have ever used. http://ranger.nongnu.org/