method create_view = fun ?(view = GTree.view ()) () ->
    let result = {
      qry_view = view;
      qry_name =
        GTree.view_column ~title:"Name"
          ~renderer:(GTree.cell_renderer_text [], [("text", c_name)])
          ();
      qry_query =
        GTree.view_column ~title:"Query"
          ~renderer:(GTree.cell_renderer_text [], [("text", c_query)])
          ();
      qry_state =
        GTree.view_column ~title:"State"
          ~renderer:(GTree.cell_renderer_text [], [("text", c_state)])
          ();
    } in
      List.iter
        (fun v -> v#set_resizable true; i_int (view#append_column v))
        [result.qry_name; result.qry_query; result.qry_state;];
      view#set_model (Some self#coerce);
      result