def display_list text, config={}
      require 'canis/core/util/rcommandwindow'
      ht = config[:height] || 15
      layout = { :height => ht, :width => Ncurses.COLS-1, :top => Ncurses.LINES-ht+1, :left => 0 }
      rc = CommandWindow.new nil, :layout => layout, :box => true, :title => config[:title]
      w = rc.window
      ret = rc.display_interactive text
      rc = nil
      ret
    end
def display_list text, config={}
      require 'canis/core/util/rcommandwindow'
      ht = config[:height] || 15
      layout = { :height => ht, :width => Ncurses.COLS-1, :top => Ncurses.LINES-ht+1, :left => 0 }
      rc = CommandWindow.new nil, :layout => layout, :box => true, :title => config[:title]
      w = rc.window
      ret = rc.display_interactive text
      rc = nil
      ret
    end
XXX FIXME this uses only rcommand so what is it doing here.
def display_list_interactive text, config={}
 returns a ListObject since you may not know what the list itself contained
 You can do ret.list[ret.current_index] to get value