def make_buttons names
      @action_buttons = []
      $log.debug "XXX: came to NTP make buttons FORM= #{@form.name} names #{names}  "
      total = names.inject(0) {|total, item| total + item.length + 4}
      bcol = center_column total

      # this craps out when height is zero
      brow = @row + @height-2
      brow = FFI::NCurses.LINES-2 if brow < 0
      $log.debug "XXX: putting buttons :on #{brow} : #{@row} , #{@height} "
      button_ct=0
      tpp = self
      names.each_with_index do |bname, ix|
        text = bname
        #underline = @underlines[ix] if !@underlines.nil?

        button = Button.new nil do
          text text
          name bname
          row brow
          col bcol
          #underline underline
          highlight_bgcolor $reversecolor 
          color $datacolor
          bgcolor $datacolor
        end
        @action_buttons << button 
        button.form = @form
        button.override_graphic  @graphic
        index = button_ct
        tpp = self
        button.command { |form| @selected_index = index; @stop = true; 
          # ActionEvent has source event and action_command
          fire_handler :PRESS, ActionEvent.new(tpp, index, button.text)
          #throw(:close, @selected_index)
        }
        button_ct += 1
        bcol += text.length+6
      end
    end
def make_buttons names
      @action_buttons = []
      $log.debug "XXX: came to NTP make buttons FORM= #{@form.name} names #{names}  "
      total = names.inject(0) {|total, item| total + item.length + 4}
      bcol = center_column total

      # this craps out when height is zero
      brow = @row + @height-2
      brow = FFI::NCurses.LINES-2 if brow < 0
      $log.debug "XXX: putting buttons :on #{brow} : #{@row} , #{@height} "
      button_ct=0
      tpp = self
      names.each_with_index do |bname, ix|
        text = bname
        #underline = @underlines[ix] if !@underlines.nil?

        button = Button.new nil do
          text text
          name bname
          row brow
          col bcol
          #underline underline
          highlight_bgcolor $reversecolor 
          color $datacolor
          bgcolor $datacolor
        end
        @action_buttons << button 
        button.form = @form
        button.override_graphic  @graphic
        index = button_ct
        tpp = self
        button.command { |form| @selected_index = index; @stop = true; 
          # ActionEvent has source event and action_command
          fire_handler :PRESS, ActionEvent.new(tpp, index, button.text)
          #throw(:close, @selected_index)
        }
        button_ct += 1
        bcol += text.length+6
      end
    end
actually creates the action buttons