method create_view = fun ?(view = GTree.view ()) () ->
    let string_column =
      GTree.view_column ~title:"Database/Option"
        ~renderer:(GTree.cell_renderer_text [], [("text", c_string)])
        ()
    in
      List.iter
        (fun c ->
           c#set_resizable true;
           i_int (view#append_column c))
        [string_column];
      view#set_model (Some self#coerce);
      { sopt_view   = view;
        sopt_string = string_column; }