SEBWIN-219: Added missing API documentation on type level.
This commit is contained in:
parent
4ce5677ecf
commit
e0bc11fe79
88 changed files with 276 additions and 7 deletions
|
@ -11,7 +11,7 @@ using SafeExamBrowser.Contracts.UserInterface.Taskbar;
|
|||
namespace SafeExamBrowser.Contracts.Behaviour
|
||||
{
|
||||
/// <summary>
|
||||
/// Controls the lifetime and functionality of a (third-party) application which can be accessed via the taskbar.
|
||||
/// Controls the lifetime and functionality of a (third-party) application which can be accessed via the <see cref="ITaskbar"/>.
|
||||
/// </summary>
|
||||
public interface IApplicationController
|
||||
{
|
||||
|
|
|
@ -13,6 +13,9 @@ using SafeExamBrowser.Contracts.Configuration.Settings;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Behaviour
|
||||
{
|
||||
/// <summary>
|
||||
/// Controls the lifetime and is responsible for the event handling of the client application component.
|
||||
/// </summary>
|
||||
public interface IClientController
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -6,11 +6,13 @@
|
|||
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
*/
|
||||
|
||||
using SafeExamBrowser.Contracts.UserInterface;
|
||||
using SafeExamBrowser.Contracts.UserInterface.Taskbar;
|
||||
|
||||
namespace SafeExamBrowser.Contracts.Behaviour
|
||||
{
|
||||
/// <summary>
|
||||
/// Controls the lifetime and functionality of a notification which is part of the <see cref="ITaskbar"/>.
|
||||
/// </summary>
|
||||
public interface INotificationController
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Behaviour
|
||||
{
|
||||
/// <summary>
|
||||
/// Controls the lifetime and is responsible for the event handling of the runtime application component.
|
||||
/// </summary>
|
||||
public interface IRuntimeController
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using SafeExamBrowser.Contracts.UserInterface;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Behaviour.Operations
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines an operation which will be executed as part of an <see cref="IOperationSequence"/>.
|
||||
/// </summary>
|
||||
public interface IOperation
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,17 @@ using SafeExamBrowser.Contracts.UserInterface;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Behaviour.Operations
|
||||
{
|
||||
/// <summary>
|
||||
/// A sequence of <see cref="IOperation"/>s which can be used for sequential procedures, e.g. the initialization & finalization of an
|
||||
/// application component. Each operation will be executed failsafe, i.e. the return value will indicate whether a procedure completed
|
||||
/// successfully or not.
|
||||
///
|
||||
/// The execution order of the individual operations (for an exemplary sequence initialized with operations A, B, C, D) is as follows:
|
||||
///
|
||||
/// <see cref="TryPerform"/>: The operations will be performed according to their initialized order (A -> B -> C -> D).
|
||||
/// <see cref="TryRepeat"/>: The operations will be repeated according to their initialized order (A -> B -> C -> D).
|
||||
/// <see cref="TryRevert"/>: The operations will be reverted according to the reversed initial order (D -> C -> B -> A).
|
||||
/// </summary>
|
||||
public interface IOperationSequence
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Behaviour.Operations
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines the result of the sequential execution of <see cref="IOperation"/>s (as part of an <see cref="IOperationSequence"/>).
|
||||
/// </summary>
|
||||
public enum OperationResult
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines the functionality of the communication host for the client application component.
|
||||
/// </summary>
|
||||
public interface IClientHost : ICommunicationHost
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using SafeExamBrowser.Contracts.Communication.Responses;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines the functionality for a proxy to the communication host of the client application component.
|
||||
/// </summary>
|
||||
public interface IClientProxy : ICommunicationProxy
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -14,6 +14,9 @@ using SafeExamBrowser.Contracts.Configuration;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines the API for all communication between the three application components (runtime, service and client).
|
||||
/// </summary>
|
||||
[ServiceContract(SessionMode = SessionMode.Required)]
|
||||
[ServiceKnownType(typeof(SimpleMessage))]
|
||||
[ServiceKnownType(typeof(AuthenticationResponse))]
|
||||
|
|
|
@ -10,6 +10,9 @@ namespace SafeExamBrowser.Contracts.Communication
|
|||
{
|
||||
public delegate void CommunicationEventHandler();
|
||||
|
||||
/// <summary>
|
||||
/// Defines the common functionality for all communication hosts.
|
||||
/// </summary>
|
||||
public interface ICommunicationHost
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines the common functionality for all communication proxies.
|
||||
/// </summary>
|
||||
public interface ICommunicationProxy
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines the functionality of the communication host for the runtime application component.
|
||||
/// </summary>
|
||||
public interface IRuntimeHost : ICommunicationHost
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using SafeExamBrowser.Contracts.Configuration;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines the functionality for a proxy to the communication host of the runtime application component.
|
||||
/// </summary>
|
||||
public interface IRuntimeProxy : ICommunicationProxy
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -11,6 +11,9 @@ using SafeExamBrowser.Contracts.Configuration.Settings;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines the functionality for a proxy to the communication host of the service application component.
|
||||
/// </summary>
|
||||
public interface IServiceProxy : ICommunicationProxy
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication.Messages
|
||||
{
|
||||
/// <summary>
|
||||
/// This is the last message transmitted from a component to its interlocutor in order to terminate a communication session.
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class DisconnectionMessage : Message
|
||||
{
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication.Messages
|
||||
{
|
||||
/// <summary>
|
||||
/// The base class for messages, from which a message must inherit in order to be sent to an interlocutor via <see cref="ICommunication.Send(Message)"/>.
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public abstract class Message
|
||||
{
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication.Messages
|
||||
{
|
||||
/// <summary>
|
||||
/// A generic message to send simple purports without data to an interlocutor.
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class SimpleMessage : Message
|
||||
{
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication.Messages
|
||||
{
|
||||
/// <summary>
|
||||
/// The possible purports of a <see cref="SimpleMessage"/>.
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public enum SimpleMessagePurport
|
||||
{
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication.Responses
|
||||
{
|
||||
/// <summary>
|
||||
/// The response to be used to reply to an authentication request (see <see cref="Messages.SimpleMessagePurport.Authenticate"/>).
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class AuthenticationResponse : Response
|
||||
{
|
||||
|
|
|
@ -11,6 +11,9 @@ using SafeExamBrowser.Contracts.Configuration;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication.Responses
|
||||
{
|
||||
/// <summary>
|
||||
/// The response to be used to reply to a configuration request (see <see cref="Messages.SimpleMessagePurport.ConfigurationNeeded"/>).
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class ConfigurationResponse : Response
|
||||
{
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication.Responses
|
||||
{
|
||||
/// <summary>
|
||||
/// The response to a connection request (see <see cref="ICommunication.Connect(Guid?)"/>).
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class ConnectionResponse : Response
|
||||
{
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication.Responses
|
||||
{
|
||||
/// <summary>
|
||||
/// The response transmitted to a <see cref="Messages.DisconnectionMessage"/>
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class DisconnectionResponse : Response
|
||||
{
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication.Responses
|
||||
{
|
||||
/// <summary>
|
||||
/// The base class for respones, from which a response must inherit in order to be sent to an interlocutor as reply to <see cref="ICommunication.Send(Messages.Message)"/>.
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public abstract class Response
|
||||
{
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication.Responses
|
||||
{
|
||||
/// <summary>
|
||||
/// A generic response to reply simple purports without data to an interlocutor.
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class SimpleResponse : Response
|
||||
{
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Communication.Responses
|
||||
{
|
||||
/// <summary>
|
||||
/// The possible purports of a <see cref="SimpleResponse"/>.
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public enum SimpleResponsePurport
|
||||
{
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration
|
||||
{
|
||||
/// <summary>
|
||||
/// Container for the configuration of the client application component.
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class ClientConfiguration
|
||||
{
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration
|
||||
{
|
||||
/// <summary>
|
||||
/// The information about a (third-party) application which can be accessed via the <see cref="UserInterface.Taskbar.ITaskbar"/>.
|
||||
/// </summary>
|
||||
public interface IApplicationInfo
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -14,6 +14,9 @@ namespace SafeExamBrowser.Contracts.Configuration
|
|||
public delegate void TerminatedEventHandler(Guid id);
|
||||
public delegate void NameChangedEventHandler(string name);
|
||||
|
||||
/// <summary>
|
||||
/// Defines an instance of a (third-party) application which can be accessed via the <see cref="UserInterface.Taskbar.ITaskbar"/>.
|
||||
/// </summary>
|
||||
public interface IApplicationInstance
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -7,10 +7,12 @@
|
|||
*/
|
||||
|
||||
using System;
|
||||
using SafeExamBrowser.Contracts.Configuration.Settings;
|
||||
|
||||
namespace SafeExamBrowser.Contracts.Configuration
|
||||
{
|
||||
/// <summary>
|
||||
/// The repository which controls the loading and initializing of configuration data.
|
||||
/// </summary>
|
||||
public interface IConfigurationRepository
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,10 +10,13 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines an icon resource, i.e. the path to and type of an icon.
|
||||
/// </summary>
|
||||
public interface IIconResource
|
||||
{
|
||||
/// <summary>
|
||||
/// The <c>Uri</c> pointing to the icon.
|
||||
/// The <see cref="System.Uri"/> pointing to the icon.
|
||||
/// </summary>
|
||||
Uri Uri { get; }
|
||||
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration
|
||||
{
|
||||
/// <summary>
|
||||
/// The information about a notification which is part of the <see cref="UserInterface.Taskbar.ITaskbar"/>.
|
||||
/// </summary>
|
||||
public interface INotificationInfo
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -11,6 +11,9 @@ using SafeExamBrowser.Contracts.WindowsApi;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines all session-related (configuration) data.
|
||||
/// </summary>
|
||||
public interface ISession
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration
|
||||
{
|
||||
/// <summary>
|
||||
/// Provides access to information about the operating system.
|
||||
/// </summary>
|
||||
public interface ISystemInfo
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines all operating systems supported by the application.
|
||||
/// </summary>
|
||||
public enum OperatingSystem
|
||||
{
|
||||
Unknown = 0,
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines the fundamental, global configuration information for all application components.
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class RuntimeInfo
|
||||
{
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration.Settings
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines all configuration options for the browser of the application.
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class BrowserSettings
|
||||
{
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration.Settings
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines all possible configuration modes for the application.
|
||||
/// </summary>
|
||||
public enum ConfigurationMode
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration.Settings
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines all configuration options for the <see cref="Monitoring.IKeyboardInterceptor"/>.
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class KeyboardSettings
|
||||
{
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration.Settings
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines all possible kiosk modes which the application supports.
|
||||
/// </summary>
|
||||
public enum KioskMode
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration.Settings
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines all configuration options for the <see cref="Monitoring.IMouseInterceptor"/>.
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class MouseSettings
|
||||
{
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration.Settings
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines all possible service policies which the application supports.
|
||||
/// </summary>
|
||||
public enum ServicePolicy
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration.Settings
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines all configuration options for the application.
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class Settings
|
||||
{
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Configuration.Settings
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines all configuration options for the <see cref="UserInterface.Taskbar.ITaskbar"/>.
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class TaskbarSettings
|
||||
{
|
||||
|
|
|
@ -8,6 +8,10 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.I18n
|
||||
{
|
||||
/// <summary>
|
||||
/// Provides access to text data. IMPORTANT: To allow for a complete internationalization of the application, all text elements which
|
||||
/// are visible to the user must be retrieved via this module!
|
||||
/// </summary>
|
||||
public interface IText
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using System.Collections.Generic;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.I18n
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines a text resource, i.e. a source from which text data can be loaded.
|
||||
/// </summary>
|
||||
public interface ITextResource
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -9,7 +9,8 @@
|
|||
namespace SafeExamBrowser.Contracts.I18n
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines all text components of the user interface.
|
||||
/// Defines all text elements of the user interface. Use the pattern "Location_Description" to allow for a better overview over all
|
||||
/// keys and their usage (where applicable).
|
||||
/// </summary>
|
||||
public enum TextKey
|
||||
{
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Logging
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines a formatter to be used to unify the look of and information rendered in an application log.
|
||||
/// </summary>
|
||||
public interface ILogContentFormatter
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Logging
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines a typical (i.e. prioritized and timestamped) log message as content element of the application log.
|
||||
/// </summary>
|
||||
public interface ILogMessage : ILogContent
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Logging
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines an observer of the application log which can subscribe to a logger via <see cref="ILogger.Subscribe(ILogObserver)"/>.
|
||||
/// </summary>
|
||||
public interface ILogObserver
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Logging
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines raw text data as content element of the application log.
|
||||
/// </summary>
|
||||
public interface ILogText : ILogContent
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -11,6 +11,9 @@ using System.Collections.Generic;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Logging
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines the functionality of the logger.
|
||||
/// </summary>
|
||||
public interface ILogger
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Logging
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines information about a thread, to be associated with an <see cref="ILogMessage"/>.
|
||||
/// </summary>
|
||||
public interface IThreadInfo : ICloneable
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
namespace SafeExamBrowser.Contracts.Logging
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines the severity levels of the application log.
|
||||
/// Defines all possible severity levels supported by the application's <see cref="ILogger"/>.
|
||||
/// </summary>
|
||||
public enum LogLevel
|
||||
{
|
||||
|
|
|
@ -10,6 +10,9 @@ namespace SafeExamBrowser.Contracts.Monitoring
|
|||
{
|
||||
public delegate void DisplayChangedEventHandler();
|
||||
|
||||
/// <summary>
|
||||
/// Monitors the displays of the computer for (setup) changes and provides access to display-related functionality.
|
||||
/// </summary>
|
||||
public interface IDisplayMonitor
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Monitoring
|
||||
{
|
||||
/// <summary>
|
||||
/// Intercepts all keyboard input (except the Secure Attention Sequence: https://en.wikipedia.org/wiki/Secure_attention_key).
|
||||
/// </summary>
|
||||
public interface IKeyboardInterceptor
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Monitoring
|
||||
{
|
||||
/// <summary>
|
||||
/// Intercepts all mouse input.
|
||||
/// </summary>
|
||||
public interface IMouseInterceptor
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -12,6 +12,9 @@ namespace SafeExamBrowser.Contracts.Monitoring
|
|||
{
|
||||
public delegate void ExplorerStartedEventHandler();
|
||||
|
||||
/// <summary>
|
||||
/// Monitors the processes running on the computer and provides access to process-related functionality.
|
||||
/// </summary>
|
||||
public interface IProcessMonitor
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -12,6 +12,9 @@ namespace SafeExamBrowser.Contracts.Monitoring
|
|||
{
|
||||
public delegate void WindowChangedEventHandler(IntPtr window);
|
||||
|
||||
/// <summary>
|
||||
/// Monitors the windows associated with the current desktop and provides window-related functionality.
|
||||
/// </summary>
|
||||
public interface IWindowMonitor
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Monitoring
|
||||
{
|
||||
/// <summary>
|
||||
/// The key modifiers which can be detected by the <see cref="IKeyboardInterceptor"/>.
|
||||
/// </summary>
|
||||
[Flags]
|
||||
public enum KeyModifier
|
||||
{
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Monitoring
|
||||
{
|
||||
/// <summary>
|
||||
/// The key states which can be detected by the <see cref="IKeyboardInterceptor"/> or <see cref="IMouseInterceptor"/>.
|
||||
/// </summary>
|
||||
public enum KeyState
|
||||
{
|
||||
None = 0,
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.Monitoring
|
||||
{
|
||||
/// <summary>
|
||||
/// The mouse buttons which can be detected by the <see cref="IMouseInterceptor"/>.
|
||||
/// </summary>
|
||||
public enum MouseButton
|
||||
{
|
||||
None = 0,
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.SystemComponents
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines all possible charge statuses which can be determined by the application.
|
||||
/// </summary>
|
||||
public enum BatteryChargeStatus
|
||||
{
|
||||
Undefined = 0,
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.SystemComponents
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines a keyboard layout which can be loaded by the application.
|
||||
/// </summary>
|
||||
public interface IKeyboardLayout
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,10 @@ using SafeExamBrowser.Contracts.UserInterface.Taskbar;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.SystemComponents
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines the functionality of a system component (e.g. the power supply). Each system component will get an <see cref="ISystemControl"/>
|
||||
/// assigned, via which the user is able to interact with or get information about the underlying system component.
|
||||
/// </summary>
|
||||
public interface ISystemComponent<TControl> where TControl : ISystemControl
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using System;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.SystemComponents
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines a wireless network which can be connected to by the application.
|
||||
/// </summary>
|
||||
public interface IWirelessNetwork
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.SystemComponents
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines all possible network statuses which can be determined by the application.
|
||||
/// </summary>
|
||||
public enum WirelessNetworkStatus
|
||||
{
|
||||
Undefined = 0,
|
||||
|
|
|
@ -12,6 +12,10 @@ namespace SafeExamBrowser.Contracts.UserInterface
|
|||
public delegate void LoadingStateChangedEventHandler(bool isLoading);
|
||||
public delegate void TitleChangedEventHandler(string title);
|
||||
|
||||
/// <summary>
|
||||
/// Defines the functionality of a browser control (i.e. an instance of the browser resp. its user interface) and is normally embedded
|
||||
/// within an <see cref="IBrowserWindow"/>.
|
||||
/// </summary>
|
||||
public interface IBrowserControl
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ namespace SafeExamBrowser.Contracts.UserInterface
|
|||
{
|
||||
public delegate void ActionRequestedEventHandler();
|
||||
|
||||
/// <summary>
|
||||
/// Defines the functionality of a browser window, i.e. a window with an embedded browser instance (see <see cref="IBrowserControl"/>).
|
||||
/// </summary>
|
||||
public interface IBrowserWindow : IWindow
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using SafeExamBrowser.Contracts.I18n;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.UserInterface
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines the API for message boxes.
|
||||
/// </summary>
|
||||
public interface IMessageBox
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using SafeExamBrowser.Contracts.I18n;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.UserInterface
|
||||
{
|
||||
/// <summary>
|
||||
/// A progress indicator is a user interface element which displays the (completion) status of a procedure to the user.
|
||||
/// </summary>
|
||||
public interface IProgressIndicator
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,10 @@ using SafeExamBrowser.Contracts.Logging;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.UserInterface
|
||||
{
|
||||
/// <summary>
|
||||
/// The main window of the runtime application component. It is controlled by the <see cref="Behaviour.IRuntimeController"/> and serves
|
||||
/// first of all as progress indicator for the user (e.g. during application startup & shutdown).
|
||||
/// </summary>
|
||||
public interface IRuntimeWindow : ILogObserver, IProgressIndicator, IWindow
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,10 +10,13 @@ using SafeExamBrowser.Contracts.Configuration;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.UserInterface
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines the functionality of a splash screen.
|
||||
/// </summary>
|
||||
public interface ISplashScreen : IProgressIndicator, IWindow
|
||||
{
|
||||
/// <summary>
|
||||
/// The runtime information used to display version and copyright information.
|
||||
/// The runtime information used to display version and copyright information. Can be updated during the execution of a procedure.
|
||||
/// </summary>
|
||||
RuntimeInfo RuntimeInfo { set; }
|
||||
}
|
||||
|
|
|
@ -13,6 +13,11 @@ using SafeExamBrowser.Contracts.UserInterface.Taskbar;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.UserInterface
|
||||
{
|
||||
/// <summary>
|
||||
/// The factory for user interface elements which cannot be instantiated at the composition root. IMPORTANT: To allow for decoupling
|
||||
/// from the particular user interface framework in use, all dynamically generated user interface elements must be generated by this
|
||||
/// factory.
|
||||
/// </summary>
|
||||
public interface IUserInterfaceFactory : IMessageBox
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ namespace SafeExamBrowser.Contracts.UserInterface
|
|||
{
|
||||
public delegate void WindowClosingEventHandler();
|
||||
|
||||
/// <summary>
|
||||
/// Defines the functionality of a window.
|
||||
/// </summary>
|
||||
public interface IWindow
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.UserInterface
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines all possible results of a message box.
|
||||
/// </summary>
|
||||
public enum MessageBoxResult
|
||||
{
|
||||
None = 0,
|
||||
|
|
|
@ -13,6 +13,9 @@ namespace SafeExamBrowser.Contracts.UserInterface.Taskbar
|
|||
{
|
||||
public delegate void ApplicationButtonClickedEventHandler(Guid? instanceId = null);
|
||||
|
||||
/// <summary>
|
||||
/// The button of a (third-party) application which can be loaded into the <see cref="ITaskbar"/>.
|
||||
/// </summary>
|
||||
public interface IApplicationButton
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ namespace SafeExamBrowser.Contracts.UserInterface.Taskbar
|
|||
{
|
||||
public delegate void NotificationButtonClickedEventHandler();
|
||||
|
||||
/// <summary>
|
||||
/// The button of a notification which can be loaded into the <see cref="ITaskbar"/>.
|
||||
/// </summary>
|
||||
public interface INotificationButton
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.UserInterface.Taskbar
|
||||
{
|
||||
/// <summary>
|
||||
/// The control of a system component which can be loaded into the <see cref="ITaskbar"/>.
|
||||
/// </summary>
|
||||
public interface ISystemControl
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -12,6 +12,9 @@ namespace SafeExamBrowser.Contracts.UserInterface.Taskbar
|
|||
{
|
||||
public delegate void KeyboardLayoutSelectedEventHandler(IKeyboardLayout layout);
|
||||
|
||||
/// <summary>
|
||||
/// The control of the keyboard layout system component.
|
||||
/// </summary>
|
||||
public interface ISystemKeyboardLayoutControl : ISystemControl
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ using SafeExamBrowser.Contracts.SystemComponents;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.UserInterface.Taskbar
|
||||
{
|
||||
/// <summary>
|
||||
/// The control of the power supply system component.
|
||||
/// </summary>
|
||||
public interface ISystemPowerSupplyControl : ISystemControl
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -13,6 +13,9 @@ namespace SafeExamBrowser.Contracts.UserInterface.Taskbar
|
|||
{
|
||||
public delegate void WirelessNetworkSelectedEventHandler(IWirelessNetwork network);
|
||||
|
||||
/// <summary>
|
||||
/// The control of the wireless network system component.
|
||||
/// </summary>
|
||||
public interface ISystemWirelessNetworkControl : ISystemControl
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,10 @@ namespace SafeExamBrowser.Contracts.UserInterface.Taskbar
|
|||
{
|
||||
public delegate void QuitButtonClickedEventHandler();
|
||||
|
||||
/// <summary>
|
||||
/// Defines the functionality of the application taskbar. The taskbar is the main user interface element via which the user can access
|
||||
/// the browser, third-party applications, system controls and so on.
|
||||
/// </summary>
|
||||
public interface ITaskbar
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.WindowsApi
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines rectangular bounds, e.g. used for display-related operations (see <see cref="Monitoring.IDisplayMonitor"/>).
|
||||
/// </summary>
|
||||
public interface IBounds
|
||||
{
|
||||
int Left { get; }
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.WindowsApi
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines the API to retrieve information about desktops and perform desktop-related operations.
|
||||
/// </summary>
|
||||
public interface IDesktop
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -12,6 +12,9 @@ using SafeExamBrowser.Contracts.Monitoring;
|
|||
|
||||
namespace SafeExamBrowser.Contracts.WindowsApi
|
||||
{
|
||||
/// <summary>
|
||||
/// Defines and wraps the functionality available via the native Windows API.
|
||||
/// </summary>
|
||||
public interface INativeMethods
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -10,6 +10,9 @@ namespace SafeExamBrowser.Contracts.WindowsApi
|
|||
{
|
||||
public delegate void ProcessTerminatedEventHandler(int exitCode);
|
||||
|
||||
/// <summary>
|
||||
/// Represents a process and defines its functionality.
|
||||
/// </summary>
|
||||
public interface IProcess
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -8,6 +8,9 @@
|
|||
|
||||
namespace SafeExamBrowser.Contracts.WindowsApi
|
||||
{
|
||||
/// <summary>
|
||||
/// The factory for processes, to be used whenever a new process needs to be created (for internal components and third-party applications).
|
||||
/// </summary>
|
||||
public interface IProcessFactory
|
||||
{
|
||||
/// <summary>
|
||||
|
|
Loading…
Reference in a new issue