mirror of
https://github.com/microsoft/PowerToys.git
synced 2024-12-15 03:59:15 +08:00
36 lines
1.3 KiB
C#
36 lines
1.3 KiB
C#
using System.Windows.Forms;
|
|
using Wox.Core.Resource;
|
|
using Wox.Plugin;
|
|
|
|
namespace Wox
|
|
{
|
|
public class NotifyIconManager
|
|
{
|
|
|
|
private NotifyIcon notifyIcon;
|
|
private IPublicAPI _api;
|
|
|
|
public NotifyIconManager(IPublicAPI api)
|
|
{
|
|
InitialTray();
|
|
_api = api;
|
|
}
|
|
|
|
private void InitialTray()
|
|
{
|
|
notifyIcon = new NotifyIcon { Text = "Wox", Icon = Properties.Resources.app, Visible = true };
|
|
notifyIcon.Click += (o, e) => _api.ShowApp();
|
|
var open = new MenuItem(InternationalizationManager.Instance.GetTranslation("iconTrayOpen"));
|
|
open.Click += (o, e) => _api.ShowApp();
|
|
var setting = new MenuItem(InternationalizationManager.Instance.GetTranslation("iconTraySettings"));
|
|
setting.Click += (o, e) => _api.OpenSettingDialog();
|
|
var about = new MenuItem(InternationalizationManager.Instance.GetTranslation("iconTrayAbout"));
|
|
about.Click += (o, e) => _api.OpenSettingDialog("about");
|
|
var exit = new MenuItem(InternationalizationManager.Instance.GetTranslation("iconTrayExit"));
|
|
exit.Click += (o, e) => _api.CloseApp();
|
|
MenuItem[] childen = { open, setting, about, exit };
|
|
notifyIcon.ContextMenu = new ContextMenu(childen);
|
|
}
|
|
}
|
|
}
|