< Summary

Information
Class: MyNet.UI.Dialogs.DialogService
Assembly: MyNet.UI
File(s): https://raw.githubusercontent.com/sandre58/MyNet/85372080fe102cd9ee155ceab49ae000e7f66103/src/MyNet.UI/Dialogs/DialogService.cs
Tag: 323_28699572109
Line coverage
9%
Covered lines: 3
Uncovered lines: 29
Coverable lines: 32
Total lines: 152
Line coverage: 9.3%
Branch coverage
37%
Covered branches: 3
Total branches: 8
Branch coverage: 37.5%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

File(s)

https://raw.githubusercontent.com/sandre58/MyNet/85372080fe102cd9ee155ceab49ae000e7f66103/src/MyNet.UI/Dialogs/DialogService.cs

#LineLine coverage
 1// -----------------------------------------------------------------------
 2// <copyright file="DialogService.cs" company="Stéphane ANDRE">
 3// Copyright (c) Stéphane ANDRE. All rights reserved.
 4// </copyright>
 5// -----------------------------------------------------------------------
 6
 7using System;
 8using System.Collections.Generic;
 9using System.Threading;
 10using System.Threading.Tasks;
 11using MyNet.UI.Dialogs.ContentDialogs;
 12using MyNet.UI.Dialogs.FileDialogs;
 13using MyNet.UI.Dialogs.MessageBox;
 14
 15namespace MyNet.UI.Dialogs;
 16
 17/// <summary>
 18/// Default implementation of <see cref="IDialogService"/>.
 19/// Delegates to <see cref="IContentDialogService"/>, <see cref="IMessageBoxService"/>,
 20/// and <see cref="IFileDialogService"/>.
 21/// </summary>
 22public class DialogService(
 23    IContentDialogService contentDialogService,
 24    IMessageBoxService messageBoxService,
 25    IFileDialogService fileDialogService) : IDialogService
 26{
 327    private readonly IContentDialogService _contentDialogService = contentDialogService ?? throw new ArgumentNullExcepti
 328    private readonly IMessageBoxService _messageBoxService = messageBoxService ?? throw new ArgumentNullException(nameof
 329    private readonly IFileDialogService _fileDialogService = fileDialogService ?? throw new ArgumentNullException(nameof
 30
 31    #region Content dialogs
 32
 33    /// <inheritdoc />
 034    public IReadOnlyList<IDialog> OpenedDialogs => _contentDialogService.OpenedDialogs;
 35
 36    /// <inheritdoc />
 037    public bool HasOpenedDialogs => _contentDialogService.HasOpenedDialogs;
 38
 39    /// <inheritdoc />
 40    public Task<DialogResult<bool>> ShowAsync(IDialog dialog, DialogOptions? options = null, CancellationToken cancellat
 041        => _contentDialogService.ShowAsync(dialog, options, cancellationToken);
 42
 43    /// <inheritdoc />
 44    public Task<DialogResult<TResult>> ShowAsync<TResult>(IDialog<TResult> dialog, DialogOptions? options = null, Cancel
 045        => _contentDialogService.ShowAsync(dialog, options, cancellationToken);
 46
 47    /// <inheritdoc />
 048    public IDialogBuilder Create(IDialog dialog) => _contentDialogService.Create(dialog);
 49
 50    /// <inheritdoc />
 051    public IDialogBuilder<TResult> Create<TResult>(IDialog<TResult> dialog) => _contentDialogService.Create(dialog);
 52
 53    /// <inheritdoc />
 054    public Task CloseAsync(IDialog dialog) => _contentDialogService.CloseAsync(dialog);
 55
 56    #endregion
 57
 58    #region MessageBox
 59
 60    /// <inheritdoc />
 61    public Task<MessageBoxResult> ShowMessageAsync(
 62        string message,
 63        string? caption = null,
 64        MessageSeverity severity = MessageSeverity.Information,
 65        MessageBoxResultOption buttons = MessageBoxResultOption.Ok,
 66        MessageBoxResult defaultResult = MessageBoxResult.Ok,
 67        CancellationToken cancellationToken = default)
 068        => _messageBoxService.ShowAsync(message, caption, severity, buttons, defaultResult, cancellationToken);
 69
 70    /// <inheritdoc />
 71    public Task<MessageBoxResult> ShowSuccessAsync(
 72        string message,
 73        string? title = null,
 74        MessageBoxResultOption buttons = MessageBoxResultOption.Ok,
 75        CancellationToken cancellationToken = default)
 076        => _messageBoxService.ShowAsync(message, title, MessageSeverity.Success, buttons, cancellationToken: cancellatio
 77
 78    /// <inheritdoc />
 79    public Task<MessageBoxResult> ShowInformationAsync(
 80        string message,
 81        string? title = null,
 82        MessageBoxResultOption buttons = MessageBoxResultOption.Ok,
 83        CancellationToken cancellationToken = default)
 084        => _messageBoxService.ShowAsync(message, title, MessageSeverity.Information, buttons, cancellationToken: cancell
 85
 86    /// <inheritdoc />
 87    public Task<MessageBoxResult> ShowErrorAsync(
 88        string message,
 89        string? title = null,
 90        MessageBoxResultOption buttons = MessageBoxResultOption.Ok,
 91        CancellationToken cancellationToken = default)
 092        => _messageBoxService.ShowAsync(message, title, MessageSeverity.Error, buttons, cancellationToken: cancellationT
 93
 94    /// <inheritdoc />
 95    public Task<MessageBoxResult> ShowWarningAsync(
 96        string message,
 97        string? title = null,
 98        MessageBoxResultOption buttons = MessageBoxResultOption.Ok,
 99        CancellationToken cancellationToken = default)
 0100        => _messageBoxService.ShowAsync(message, title, MessageSeverity.Warning, buttons, cancellationToken: cancellatio
 101
 102    /// <inheritdoc />
 103    public Task<MessageBoxResult> ShowQuestionAsync(
 104        string message,
 105        string? title = null,
 106        CancellationToken cancellationToken = default)
 0107        => _messageBoxService.ShowAsync(
 0108            message,
 0109            title,
 0110            MessageSeverity.Question,
 0111            MessageBoxResultOption.YesNo,
 0112            MessageBoxResult.Yes,
 0113            cancellationToken);
 114
 115    /// <inheritdoc />
 116    public Task<MessageBoxResult> ShowQuestionWithCancelAsync(
 117        string message,
 118        string? title = null,
 119        CancellationToken cancellationToken = default)
 0120        => _messageBoxService.ShowAsync(
 0121            message,
 0122            title,
 0123            MessageSeverity.Question,
 0124            MessageBoxResultOption.YesNoCancel,
 0125            MessageBoxResult.Yes,
 0126            cancellationToken);
 127
 128    #endregion
 129
 130    #region File dialogs
 131
 132    /// <inheritdoc />
 133    public Task<FileDialogResult> ShowOpenFileDialogAsync(
 134        OpenFileDialogSettings? settings = null,
 135        CancellationToken cancellationToken = default)
 0136        => _fileDialogService.ShowOpenFileDialogAsync(settings ?? new OpenFileDialogSettings(), cancellationToken);
 137
 138    /// <inheritdoc />
 139    public Task<FileDialogResult> ShowSaveFileDialogAsync(
 140        SaveFileDialogSettings settings,
 141        CancellationToken cancellationToken = default)
 0142        => _fileDialogService.ShowSaveFileDialogAsync(settings, cancellationToken);
 143
 144    /// <inheritdoc />
 145    public Task<FileDialogResult> ShowFolderDialogAsync(
 146        OpenFolderDialogSettings settings,
 147        CancellationToken cancellationToken = default)
 0148        => _fileDialogService.ShowFolderDialogAsync(settings, cancellationToken);
 149
 150    #endregion
 151}
 152

Methods/Properties

.ctor(MyNet.UI.Dialogs.ContentDialogs.IContentDialogService,MyNet.UI.Dialogs.MessageBox.IMessageBoxService,MyNet.UI.Dialogs.FileDialogs.IFileDialogService)
get_OpenedDialogs()
get_HasOpenedDialogs()
ShowAsync(MyNet.UI.Dialogs.ContentDialogs.IDialog,MyNet.UI.Dialogs.ContentDialogs.DialogOptions,System.Threading.CancellationToken)
ShowAsync(MyNet.UI.Dialogs.ContentDialogs.IDialog`1<TResult>,MyNet.UI.Dialogs.ContentDialogs.DialogOptions,System.Threading.CancellationToken)
Create(MyNet.UI.Dialogs.ContentDialogs.IDialog)
Create(MyNet.UI.Dialogs.ContentDialogs.IDialog`1<TResult>)
CloseAsync(MyNet.UI.Dialogs.ContentDialogs.IDialog)
ShowMessageAsync(System.String,System.String,MyNet.UI.Dialogs.MessageBox.MessageSeverity,MyNet.UI.Dialogs.MessageBox.MessageBoxResultOption,MyNet.UI.Dialogs.MessageBox.MessageBoxResult,System.Threading.CancellationToken)
ShowSuccessAsync(System.String,System.String,MyNet.UI.Dialogs.MessageBox.MessageBoxResultOption,System.Threading.CancellationToken)
ShowInformationAsync(System.String,System.String,MyNet.UI.Dialogs.MessageBox.MessageBoxResultOption,System.Threading.CancellationToken)
ShowErrorAsync(System.String,System.String,MyNet.UI.Dialogs.MessageBox.MessageBoxResultOption,System.Threading.CancellationToken)
ShowWarningAsync(System.String,System.String,MyNet.UI.Dialogs.MessageBox.MessageBoxResultOption,System.Threading.CancellationToken)
ShowQuestionAsync(System.String,System.String,System.Threading.CancellationToken)
ShowQuestionWithCancelAsync(System.String,System.String,System.Threading.CancellationToken)
ShowOpenFileDialogAsync(MyNet.UI.Dialogs.FileDialogs.OpenFileDialogSettings,System.Threading.CancellationToken)
ShowSaveFileDialogAsync(MyNet.UI.Dialogs.FileDialogs.SaveFileDialogSettings,System.Threading.CancellationToken)
ShowFolderDialogAsync(MyNet.UI.Dialogs.FileDialogs.OpenFolderDialogSettings,System.Threading.CancellationToken)