method menu_ctx (selection : string option) =
      let l =
        match selection with
          None -> []
        | Some dir ->
            [
              `I (M.add_dir, self#add_dir dir) ;
              `I (M.update_dir, self#update_dir dir) ;
              `I (M.commit_dir, self#commit_dir dir) ;
              `I (M.tag_dir, self#tag_dir dir) ;
            ]
     in
     match l with
       [] -> base#menu_ctx selection
     | _ -> l @ (`S :: base#menu_ctx selection)