Files
FSI.BT.IR.Tools/FSI.BT.Tools/App.xaml.cs
2022-03-23 10:04:29 +01:00

69 lines
2.2 KiB
C#

using Hardcodet.Wpf.TaskbarNotification;
using NHotkey;
using NHotkey.Wpf;
using System.Windows;
using System.Windows.Input;
namespace FSI.BT.Tools
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : System.Windows.Application
{
private static readonly KeyGesture RadialMenu = new(Key.OemBackslash, ModifierKeys.Control);
private static readonly KeyGesture TimeStamp = new(Key.C, ModifierKeys.Control | ModifierKeys.Alt);
public void Application_Startup(object sender, StartupEventArgs e)
{
Global.Settings = new AppSettings(GetType().Namespace.ToString() + ".xml");
Global.Settings.Load();
Global.TaskbarIcon = (TaskbarIcon)FindResource("FSINotifyIcon");
Global.AdminRights = Admin.CheckAdminRight();
Global.SuperAdminRights = Admin.CheckSuperAdminRight();
Global.UserRights = Admin.CheckUserRight();
HotkeyManager.Current.AddOrReplace("RadialMenu", RadialMenu, ShowRadialMenu);
HotkeyManager.Current.AddOrReplace("TimeStampToClipboard", TimeStamp, TimeStampToClipboard);
Global.FrmRadialMenu = new();
Global.WinCC = new()
{
AutoStart = Global.Settings.SieTiaWinCCMsgMgtAutostart,
UpdateIntervall = Global.Settings.SieTiaWinCCMsgMgtUpdateIntervall,
WindowsName = Global.Settings.SieTiaWinCCMsgMgtWindowsName,
WindowsClassName = Global.Settings.SieTiaWinCCMsgMgtClassName,
ButtonName = Global.Settings.SieTiaWinCCMsgMgtBtnName,
};
}
private void ShowRadialMenu(object sender, HotkeyEventArgs e)
{
var cmd = new Commands.RadialMenuCommand();
if (cmd.CanExecute(null))
cmd.Execute(null);
e.Handled = true;
}
private void TimeStampToClipboard(object sender, HotkeyEventArgs e)
{
var cmd = new Commands.TimeStampToClipboardCommand();
cmd.Execute(null);
e.Handled = true;
}
private void Application_Exit(object sender, ExitEventArgs e)
{
Global.Settings.Save();
}
}
}