let params_for_ft_rule available_rules ft =
  let param_ft = C.combo
      ~new_allowed:true
      ~blank_allowed:false
      ~f:(fun s -> ft.conf_ft <- Glib.Convert.locale_from_utf8 s)
      Cam_messages.file_type
      (file_type_choices ())
      (Glib.Convert.locale_to_utf8 ft.conf_ft)
  in
  let param_rule = C.combo
      ~new_allowed:true
      ~blank_allowed:false
      ~f: (fun s -> ft.conf_rule <- Glib.Convert.locale_from_utf8 s)
      Cam_messages.rule
      (List.map (fun r -> r.rule_name) available_rules)
      (Glib.Convert.locale_to_utf8 ft.conf_rule)
  in
  [ param_ft ; param_rule ]