method edit_selected () =
      match self#selected_rr with
        None -> ()
      | Some rr ->
          let row = rr#iter in
          match store#get ~row ~column: col_data with
            Then _ | Else _ -> ()
          | ele ->
              let params =
                match ele with
                  Leaf l -> self#params_for_leaf l
                | Mark m -> self#params_for_mark m
                | Tag t -> self#params_for_tag t
                | List l -> self#params_for_list l
                | Cond c -> self#params_for_cond c
                | Sub s -> self#params_for_sub s
                | Else _ | Then _ -> assert false
              in
              match params with
                [] -> ()
              | _ ->
                  match C.simple_get Rep_messages.edit_selected params
                  with
                    C.Return_ok ->
                      store#set ~row ~column: col_display (self#string_of_desc_ele ele);
                  | _ ->
                      ()