let find_first_child store it =
  let p = store#get_path it in
  let res = ref None in
  store#foreach
    (fun _ it ->
      let parent = store#iter_parent it in
      match parent with
        None -> false
      |        Some itp ->
          if store#get_path itp = p then (res := Some it; trueelse false
    );
  !res