You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.2 KiB
49 lines
1.2 KiB
using MultiTerm.Core.Types;
|
|
using MultiTerm.Protocols;
|
|
using MultiTerm.Protocols.Types;
|
|
|
|
namespace MultiTerm.Core.ViewModel;
|
|
|
|
public interface ITerminalViewModel
|
|
{
|
|
/// <summary>
|
|
/// Title of the Terminal View.
|
|
/// </summary>
|
|
string Title { get; }
|
|
|
|
/// <summary>
|
|
/// Type of view.
|
|
/// </summary>
|
|
TerminalViewType ViewType { get; }
|
|
|
|
/// <summary>
|
|
/// Type of Protocol.
|
|
/// </summary>
|
|
ProtocolType ProtocolType { get; set; }
|
|
|
|
/// <summary>
|
|
/// Communication Protocol instance.
|
|
/// </summary>
|
|
ICommunicationProtocol? CommunicationProtocol { get; set; }
|
|
|
|
/// <summary>
|
|
/// Settings ViewModel that displays protocol specific settings to user.
|
|
/// </summary>
|
|
IProtocolSettingsViewModel? ProtocolSettings { get; set; }
|
|
|
|
/// <summary>
|
|
/// Request Closing of Terminal.
|
|
/// </summary>
|
|
void CloseRequest();
|
|
|
|
/// <summary>
|
|
/// Force close the Terminal and disconnect communication protocol.
|
|
/// Does not raise <see cref="ClosingEvent"/>.
|
|
/// </summary>
|
|
void ForceClose();
|
|
|
|
/// <summary>
|
|
/// Closing of Terminal was initiated.
|
|
/// </summary>
|
|
event EventHandler ClosingEvent;
|
|
}
|
|
|