# File lib/highline/menu.rb, line 26
    def initialize(  )
      #
      # Initialize Question objects with ignored values, we'll
      # adjust ours as needed.
      # 
      super("Ignored", [ ], &nil)    # avoiding passing the block along
      
      @items           = [ ]
      @hidden_items    = [ ]
      @help            = Hash.new("There's no help for that topic.")

      @index           = :number
      @index_suffix    = ". "
      @select_by       = :index_or_name
      @flow            = :rows
      @list_option     = nil
      @header          = nil
      @prompt          = "?  "
      @layout          = :list
      @shell           = false
      @nil_on_handled  = false
      
      # Override Questions responses, we'll set our own.
      @responses       = { }
      # Context for action code.
      @highline        = nil
      
      yield self if block_given?

      init_help if @shell and not @help.empty?
      update_responses     # rebuild responses based on our settings
    end