# File control/DocumentTable/DocumentTable.rb, line 263
  def add_filter
    i = @add_filter_call_index
    query_params = Hash.new
    query_params['filter'] = @add_filter_type_selected[i]
    query_params['pos'] = @control.filters.length.to_s

    path = @document_list[i][@src.path_tag]
    mask = @document_list[i][@src.mask_tag]
    vhost = @document_list[i]['virtual_host']
    if (path) then
      query_params['path'] = path
    end
    case (mask)
    when NilClass
      query_params['mask'] = 'nil'
    when Regexp
      re_src = mask.source.dup
      re_src.sub!(%"\(", '')
      re_src.sub!(%"\)\(\\?/\|\$\)", '')
      query_params['mask'] = 'regexp:' + re_src
    when ::String
      query_params['mask'] = 'string:' + mask
    else
      raise "unknown mask type: #{mask.inspect} (mask.class)"
    end
    if (vhost) then
      query_params['vhost'] = vhost
    end

    @driver.redirect('SetupFilter', query_params)
    nil
  end