method insert_node ?parent dirname name =
let row = store#append ?parent () in
store#set row col_complete name;
store#set row col_display (self#dir_string name);
self#row_inserted row name;
let subdirs = self#subdirs name in
match subdirs with
[] ->
()
| l ->
let rr = store#get_row_reference (store#get_path row) in
List.iter
(self#insert_node ~parent: row name)
(List.sort compare l);
if self#expand_dir name then
view#expand_row rr#path