Files
better-genshin-impact/BetterGenshinImpact/Service/Notification/NotificationHelper.cs
2024-08-14 18:01:02 +08:00

29 lines
992 B
C#

using BetterGenshinImpact.GameTask.Common;
using BetterGenshinImpact.Service.Notification.Builder;
using BetterGenshinImpact.Service.Notification.Model;
using System;
using System.Drawing;
namespace BetterGenshinImpact.Service.Notification;
public class NotificationHelper
{
public static void Notify(INotificationData notificationData)
{
NotificationService.Instance().NotifyAllNotifiers(notificationData);
}
public static void SendTaskNotificationUsing(Func<TaskNotificationBuilder, INotificationData> builderFunc)
{
var builder = new TaskNotificationBuilder();
Notify(builderFunc(builder));
}
public static void SendTaskNotificationWithScreenshotUsing(Func<TaskNotificationBuilder, INotificationData> builderFunc)
{
var builder = new TaskNotificationBuilder();
var screenShot = (Bitmap)TaskControl.CaptureToRectArea().SrcBitmap.Clone();
Notify(builderFunc(builder.WithScreenshot(screenShot)));
}
}