using Panuon.WPF.UI;
|
using System.Windows;
|
using System.Windows.Controls;
|
|
namespace HMI.UI.Util
|
{
|
public interface ToastHandler
|
{
|
void Success(Window window,
|
string message,
|
MessageBoxIcon icon,
|
ToastPosition position, double offset, int durationMs,
|
ToastWindow targetWindow);
|
|
void Warning(Window window,
|
string message,
|
MessageBoxIcon icon,
|
ToastPosition position, double offset, int durationMs,
|
ToastWindow targetWindow);
|
|
void Error(Window window,
|
string message,
|
MessageBoxIcon icon,
|
ToastPosition position, double offset, int durationMs,
|
ToastWindow targetWindow);
|
|
void Info(Window window,
|
string message,
|
MessageBoxIcon icon,
|
ToastPosition position, double offset, int durationMs,
|
ToastWindow targetWindow);
|
}
|
|
public class ToastHelper
|
{
|
private static ToastHandler Instance;
|
|
public static void Register(ToastHandler helper)
|
{
|
if (Instance == null) { Instance = helper; }
|
}
|
|
public static void Success(Window window,
|
string message,
|
MessageBoxIcon icon = MessageBoxIcon.Success,
|
ToastPosition position = ToastPosition.Top, double offset = 0, int durationMs = 3000,
|
ToastWindow targetWindow = ToastWindow.ActiveWindow)
|
{
|
Instance.Success(window, message, icon, position, offset, durationMs, targetWindow);
|
}
|
|
public static void Warning(Window window,
|
string message,
|
MessageBoxIcon icon = MessageBoxIcon.Warning,
|
ToastPosition position = ToastPosition.Top, double offset = 0, int durationMs = 3000,
|
ToastWindow targetWindow = ToastWindow.ActiveWindow)
|
{
|
Instance.Warning(window, message, icon, position, offset, durationMs, targetWindow);
|
}
|
|
public static void Error(Window window,
|
string message,
|
MessageBoxIcon icon = MessageBoxIcon.Error,
|
ToastPosition position = ToastPosition.Top, double offset = 0, int durationMs = 3000,
|
ToastWindow targetWindow = ToastWindow.ActiveWindow)
|
{
|
Instance.Error(window, message, icon, position, offset, durationMs, targetWindow);
|
}
|
|
public static void Info(Window window,
|
string message,
|
MessageBoxIcon icon = MessageBoxIcon.Info,
|
ToastPosition position = ToastPosition.Top, double offset = 0, int durationMs = 3000,
|
ToastWindow targetWindow = ToastWindow.ActiveWindow)
|
{
|
Instance.Info(window, message, icon, position, offset, durationMs, targetWindow);
|
}
|
}
|
|
public static class ToastUtil
|
{
|
|
public static void Success(this Window window,
|
string message,
|
MessageBoxIcon icon = MessageBoxIcon.Success,
|
ToastPosition position = ToastPosition.Top, double offset = 0, int durationMs = 3000,
|
ToastWindow targetWindow = ToastWindow.ActiveWindow)
|
{
|
ToastHelper.Success(window, message, icon, position, offset, durationMs, targetWindow);
|
}
|
|
public static void Warning(this Window window,
|
string message,
|
MessageBoxIcon icon = MessageBoxIcon.Warning,
|
ToastPosition position = ToastPosition.Top, double offset = 0, int durationMs = 3000,
|
ToastWindow targetWindow = ToastWindow.ActiveWindow)
|
{
|
ToastHelper.Warning(window, message, icon, position, offset, durationMs, targetWindow);
|
}
|
|
public static void Error(this Window window,
|
string message,
|
MessageBoxIcon icon = MessageBoxIcon.Error,
|
ToastPosition position = ToastPosition.Top, double offset = 0, int durationMs = 3000,
|
ToastWindow targetWindow = ToastWindow.ActiveWindow)
|
{
|
ToastHelper.Error(window, message, icon, position, offset, durationMs, targetWindow);
|
}
|
|
public static void Info(this Window window,
|
string message,
|
MessageBoxIcon icon = MessageBoxIcon.Info,
|
ToastPosition position = ToastPosition.Top, double offset = 0, int durationMs = 3000,
|
ToastWindow targetWindow = ToastWindow.ActiveWindow)
|
{
|
ToastHelper.Info(window, message, icon, position, offset, durationMs, targetWindow);
|
}
|
|
|
public static void Success(this UserControl control,
|
string message,
|
MessageBoxIcon icon = MessageBoxIcon.Success,
|
ToastPosition position = ToastPosition.Top, double offset = 0, int durationMs = 3000,
|
ToastWindow targetWindow = ToastWindow.ActiveWindow)
|
{
|
ToastHelper.Success(Window.GetWindow(control), message, icon, position, offset, durationMs, targetWindow);
|
}
|
|
public static void Warning(this UserControl control,
|
string message,
|
MessageBoxIcon icon = MessageBoxIcon.Warning,
|
ToastPosition position = ToastPosition.Top, double offset = 0, int durationMs = 3000,
|
ToastWindow targetWindow = ToastWindow.ActiveWindow)
|
{
|
ToastHelper.Warning(Window.GetWindow(control), message, icon, position, offset, durationMs, targetWindow);
|
}
|
|
public static void Error(this UserControl control,
|
string message,
|
MessageBoxIcon icon = MessageBoxIcon.Error,
|
ToastPosition position = ToastPosition.Top, double offset = 0, int durationMs = 3000,
|
ToastWindow targetWindow = ToastWindow.ActiveWindow)
|
{
|
ToastHelper.Error(Window.GetWindow(control), message, icon, position, offset, durationMs, targetWindow);
|
}
|
|
public static void Info(this UserControl control,
|
string message,
|
MessageBoxIcon icon = MessageBoxIcon.Error,
|
ToastPosition position = ToastPosition.Top, double offset = 0, int durationMs = 3000,
|
ToastWindow targetWindow = ToastWindow.ActiveWindow)
|
{
|
ToastHelper.Info(Window.GetWindow(control), message, icon, position, offset, durationMs, targetWindow);
|
}
|
}
|
}
|