PageRenderTime 31ms CodeModel.GetById 23ms app.highlight 4ms RepoModel.GetById 1ms app.codeStats 0ms

/src/NUnit/util/RecentFiles.cs

#
C# | 55 lines | 14 code | 7 blank | 34 comment | 0 complexity | ca5776fa0e6fc1accb988966f981044a MD5 | raw file
 1// ****************************************************************
 2// Copyright 2007, Charlie Poole
 3// This is free software licensed under the NUnit license. You may
 4// obtain a copy of the license at http://nunit.org
 5// ****************************************************************
 6
 7using System;
 8using System.Collections;
 9
10namespace NUnit.Util
11{
12	/// <summary>
13	/// The RecentFiles interface is used to isolate the app
14	/// from various implementations of recent files.
15	/// </summary>
16	public interface RecentFiles
17	{ 
18		/// <summary>
19		/// The max number of files saved
20		/// </summary>
21		int MaxFiles { get; set; }
22
23		/// <summary>
24		/// The current number of saved files
25		/// </summary>
26		int Count { get; }
27
28		/// <summary>
29		/// Get a list of all the file entries
30		/// </summary>
31		/// <returns>The most recent file list</returns>
32		RecentFilesCollection Entries { get; }
33
34		/// <summary>
35		/// Set the most recent file entry, reordering
36		/// the saved names as needed and removing the oldest
37		/// if the max number of files would be exceeded.
38		/// </summary>
39		void SetMostRecent( RecentFileEntry entry );
40
41		/// <summary>
42		/// Set the most recent file name, reordering
43		/// the saved names as needed and removing the oldest
44		/// if the max number of files would be exceeded.
45		/// The current CLR version is used to create the entry.
46		/// </summary>
47		void SetMostRecent( string fileName );
48
49		/// <summary>
50		/// Remove a file from the list
51		/// </summary>
52		/// <param name="fileName">The name of the file to remove</param>
53		void Remove( string fileName );
54	}
55}