From d8e2f8cd51efc432e684a5801922a3d151a03d8c Mon Sep 17 00:00:00 2001 From: Joshua_Gutenplan <18546589+jgutenplan@users.noreply.github.com> Date: Thu, 25 Apr 2024 10:03:38 -0700 Subject: [PATCH] feat: IVideoCodecUiExtensions --- .../Interfaces/IVideoCodecUiExtensions.cs | 12 +++++++ .../IVideoCodecUiExtensionsClickedAction.cs | 35 +++++++++++++++++++ .../IVideoCodecUiExtensionsClickedEvent.cs | 25 +++++++++++++ 3 files changed, 72 insertions(+) create mode 100644 src/PepperDash.Essentials.Devices.Common/VideoCodec/Interfaces/IVideoCodecUiExtensions.cs create mode 100644 src/PepperDash.Essentials.Devices.Common/VideoCodec/Interfaces/IVideoCodecUiExtensionsClickedAction.cs create mode 100644 src/PepperDash.Essentials.Devices.Common/VideoCodec/Interfaces/IVideoCodecUiExtensionsClickedEvent.cs diff --git a/src/PepperDash.Essentials.Devices.Common/VideoCodec/Interfaces/IVideoCodecUiExtensions.cs b/src/PepperDash.Essentials.Devices.Common/VideoCodec/Interfaces/IVideoCodecUiExtensions.cs new file mode 100644 index 00000000..32e7f0c8 --- /dev/null +++ b/src/PepperDash.Essentials.Devices.Common/VideoCodec/Interfaces/IVideoCodecUiExtensions.cs @@ -0,0 +1,12 @@ +namespace PepperDash.Essentials.Devices.Common.VideoCodec.Interfaces +{ + public interface IVideoCodecUiExtensionsHandler : IVideoCodecUiExtensionsWebViewDisplayAction, IVideoCodecUiExtensionsClickedEvent + { + } + + public interface IVideoCodecUiExtensions + { + IVideoCodecUiExtensionsHandler VideoCodecUiExtensionsHandler { get; set; } + } + +} \ No newline at end of file diff --git a/src/PepperDash.Essentials.Devices.Common/VideoCodec/Interfaces/IVideoCodecUiExtensionsClickedAction.cs b/src/PepperDash.Essentials.Devices.Common/VideoCodec/Interfaces/IVideoCodecUiExtensionsClickedAction.cs new file mode 100644 index 00000000..aba77e13 --- /dev/null +++ b/src/PepperDash.Essentials.Devices.Common/VideoCodec/Interfaces/IVideoCodecUiExtensionsClickedAction.cs @@ -0,0 +1,35 @@ +using System; + +namespace PepperDash.Essentials.Devices.Common.VideoCodec.Interfaces +{ + public interface IVideoCodecUiExtensionsWebViewDisplayAction + { + Action UiWebViewDisplayAction { get; set; } + } + + public class UiWebViewDisplayActionArgs + { + + /// + /// Required <0 - 2000> The URL of the web page. + /// + public string Url { get; set; } + + /// + /// Fullscreen, Modal Full screen: Display the web page on the entire screen.Modal: Display the web page in a window. + /// + + public string Mode { get; set; } + + /// + /// <0 - 255> The title of the web page. + /// + public string Title { get; set; } + + /// + /// <0 - 8192> An HTTP header field.You can add up 15 Header parameters in one command, each holding one HTTP header field. + /// + public string Header { get; set; } + } + +} diff --git a/src/PepperDash.Essentials.Devices.Common/VideoCodec/Interfaces/IVideoCodecUiExtensionsClickedEvent.cs b/src/PepperDash.Essentials.Devices.Common/VideoCodec/Interfaces/IVideoCodecUiExtensionsClickedEvent.cs new file mode 100644 index 00000000..9e9bb63d --- /dev/null +++ b/src/PepperDash.Essentials.Devices.Common/VideoCodec/Interfaces/IVideoCodecUiExtensionsClickedEvent.cs @@ -0,0 +1,25 @@ +using System; + +namespace PepperDash.Essentials.Devices.Common.VideoCodec.Interfaces +{ + public interface IVideoCodecUiExtensionsClickedEvent + { + event EventHandler UiExtensionsClickedEvent; + } + + public class UiExtensionsClickedEventArgs : EventArgs + { + public bool Clicked { get; set; } + public string Id { get; set; } + + public UiExtensionsClickedEventArgs(bool clicked, string id) + { + Clicked = clicked; + Id = id; + } + + public UiExtensionsClickedEventArgs() + { + } + } +}