using System; using System.Collections.Generic; using JetBrains.Annotations; using Unity.Cloud.Collaborate.Models.Structures; using Unity.Cloud.Collaborate.Presenters; namespace Unity.Cloud.Collaborate.Views { internal interface IHistoryView : IView { /// /// Set busy status in the view. /// /// Whether or not the presenter is busy with a request. void SetBusyStatus(bool busy); /// /// Set the history list to be displayed. If the history list is not the current display, the view should switch /// to it upon receiving this call. /// /// List of entries to display. void SetHistoryList(IReadOnlyList list); /// /// Set the current page and max page so that the paginator can be populated. /// /// Current page. /// Max page. void SetPage(int page, int max); /// /// Set the single history entry to display the provided entry. If the history single entry view is not the /// current display, the view should switch to it upon receiving this call. /// /// Entry to display. void SetSelection([NotNull] IHistoryEntry entry); /// /// Display a dialogue to the user. /// /// Title for the dialogue. /// Message inside the dialogue. /// Affirmative button text. /// True if affirmative is clicked. bool DisplayDialogue([NotNull] string title, [NotNull] string message, [NotNull] string affirmative); /// /// Display a dialogue to the user. /// /// Title for the dialogue. /// Message inside the dialogue. /// Affirmative button text. /// Negative button text. /// True if affirmative is clicked. bool DisplayDialogue([NotNull] string title, [NotNull] string message, [NotNull] string affirmative, [NotNull] string negative); } }