Files
Wino-Mail/Wino.Mail/MenuFlyouts/RendererCommandBarItem.cs

46 lines
1.1 KiB
C#
Raw Normal View History

2024-04-18 01:44:37 +02:00
using System;
2024-07-12 02:29:17 +02:00
2024-04-18 01:44:37 +02:00
using Wino.Controls;
using Wino.Core.Domain.Enums;
using Wino.Helpers;
2024-07-12 02:29:17 +02:00
#if NET8_0
using Microsoft.UI.Xaml;
using Microsoft.UI.Xaml.Controls;
#else
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
#endif
2024-04-18 01:44:37 +02:00
namespace Wino.MenuFlyouts
{
public class RendererCommandBarItem : AppBarButton, IDisposable
{
public MailOperation Operation { get; set; }
Action<MailOperation> Clicked { get; set; }
public RendererCommandBarItem(MailOperation operation, Action<MailOperation> clicked)
{
Margin = new Thickness(6, 0, 6, 0);
CornerRadius = new CornerRadius(6);
Operation = operation;
Clicked = clicked;
Label = XamlHelpers.GetOperationString(operation);
Icon = new WinoFontIcon() { Icon = WinoIconGlyph.Archive };
Click += MenuClicked;
}
2024-07-12 02:29:17 +02:00
private void MenuClicked(object sender, RoutedEventArgs e)
2024-04-18 01:44:37 +02:00
{
Clicked(Operation);
}
public void Dispose()
{
Click -= MenuClicked;
}
}
}