let set_row w ?foreground ?background ?selectable ?style row =
    let may_set f = may ~f:(f w ~row) in
    may_set set_foreground foreground;
    may_set set_background  background;
    may_set set_selectable  selectable;
    may_set set_row_style style