method menu_ctx (selection : Ocvs_types.cvs_info list) : GToolbox.menu_entry list =
      match selection with
        [] ->
          [
            `I (M.add_files, self#add_files) ;
            `I (M.add_binary_files, self#add_binary_files) ;
          ]
        | f :: _ ->
            let cvs_choices =
              [
                `I (M.add_files, self#add_files) ;
                `I (M.add_binary_files, self#add_binary_files) ;
                `I (M.commit_files, self#commit_selected_files selection);
                `I (M.tag_files, self#tag_selected_files selection) ;
                `I (M.tags_of_file, self#tags_of_selected_file selection) ;
                `I (M.remove_files, self#remove_selected_files selection) ;
                `I (M.last_diff, self#lastdiff_selected_file selection) ;
                `I (M.diff_with, self#differences_with selection) ;
                `I (M.diff_between, self#differences_between selection) ;
                `I (M.resolve_conflicts, self#resolve_conflicts selection);
                `I (M.log, self#log_selected_file selection);
              ]
            in
            let l =
              match Cam_files.edition_commands_menu_entries f.Ocvs_types.cvs_file with
                [] -> []
              | l -> l @ [`S]
            in
            l @ cvs_choices