IHistoryPresenter.cs
1.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
using System.Collections.Generic;
using JetBrains.Annotations;
using Unity.Cloud.Collaborate.Models.Structures;
namespace Unity.Cloud.Collaborate.Presenters
{
internal interface IHistoryPresenter : IPresenter
{
/// <summary>
/// Request a move to the previous page. Ensures page number never goes below 0.
/// </summary>
void PrevPage();
/// <summary>
/// Request a move to the next page. Ensures page number doesn't go beyond the max number of pages.
/// </summary>
void NextPage();
/// <summary>
/// Set the revision id to request.
/// </summary>
[NotNull]
string SelectedRevisionId { set; }
/// <summary>
/// Request to update the state of the project to a provided revision. If revision is in the past, then the
/// state of the project at that point simply will be applied on top of the current without impacting history.
/// </summary>
/// <param name="revisionId">Revision id of the project to update to.</param>
/// <param name="status">Status of the revision.</param>
void RequestGoto([NotNull] string revisionId, HistoryEntryStatus status);
/// <summary>
/// Returns true if revert is supported.
/// </summary>
bool SupportsRevert { get; }
/// <summary>
/// Request to revert the specified files to the given revision.
/// </summary>
/// <param name="revisionId">Revision to revert the files back to.</param>
/// <param name="files">Files to revert back.</param>
void RequestRevert([NotNull] string revisionId, [NotNull] IReadOnlyList<string> files);
}
}