public void InitTray() { _tray = Application.Current.FindResource("TrayIcon") as TaskbarIcon; _trayViewModel = new TaskbarIconViewModel(this, Settings, DialogService.Instance); _tray.DataContext = _trayViewModel; TaskbarIcon.SetParentTaskbarIcon(Application.Current.MainWindow, _tray); }
public JarvisTaskbarIcon(JarvisApplication application, TaskbarIconViewModel viewModel) { _icon = (TaskbarIcon)application.FindResource("SystemTrayIcon"); if (_icon != null) { _icon.DataContext = viewModel; } }
public TaskbarIconManager(TaskbarIcon taskbarIcon, TaskbarIconViewModel viewModel) { this.viewModel = viewModel; taskbarIcon.DataContext = viewModel; taskbarIcon.ContextMenu.Opened += ContextMenu_Opened; InitializeAnimator(); }
/// <summary> /// Start all functions. /// </summary> public void StartAllFunctions() { Logger.Write("Starting functions..."); Logger.Write("Creating MainService..."); _mainService = new MainService(_hwndSource); Logger.Write("Creating OSD window..."); if (SettingManager.OsdStyle == 1) { _osdWindow = new DefaultOsdWindow(); } else if (SettingManager.OsdStyle == 2) { _osdWindow = new CirculaOsdWindow(); } if (_taskbarIcon == null && SettingManager.TrayIconId > 0) { Logger.Write("Creating TrayIcon..."); var icon = System.Drawing.Icon.ExtractAssociatedIcon(_currentExeFilePath); var iconUri = @"pack://application:,,,/" + Assembly.GetExecutingAssembly().GetName().Name + ";component/" + $"Resources/TrayIcon{SettingManager.TrayIconId}.png"; try { var iconImageUri = new Uri(iconUri, UriKind.Absolute); var image = new BitmapImage(iconImageUri); var iconBitmap = ImageToBitmap(image); icon = System.Drawing.Icon.FromHandle(iconBitmap.GetHicon()); iconBitmap.Dispose(); } catch (Exception ex) { Logger.Write($"GetIcon from {iconUri} failed, error:{ex}"); } var settingCommand = new TaskbarIconMenuCommand(ShowSettingWindow); var exitCommand = new TaskbarIconMenuCommand(Close); var taskbarIconViewModel = new TaskbarIconViewModel(settingCommand, exitCommand); _taskbarIcon = new TaskbarIcon { DataContext = taskbarIconViewModel, ContextMenu = Application.Current.TryFindResource("SysTrayMenu") as ContextMenu, TrayToolTip = Application.Current.TryFindResource("SysTrayToolTip") as Border, Icon = icon }; _taskbarIcon.TrayMouseDoubleClick += OnTrayIconDoubleClick; var backlightService = ServiceManager.GetService <IBacklightService>(); backlightService.BrightnessChanged += OnBrightnessChanged; OnBrightnessChanged(backlightService, EventArgs.Empty); } Logger.Write("All functions started."); }
public void InitTray() { var ui = new UIServicesDefaults(); _tray = Application.Current.FindResource("TrayIcon") as TaskbarIcon; var vm = new TaskbarIconViewModel(this, ui); _tray.DataContext = vm; TaskbarIcon.SetParentTaskbarIcon(Application.Current.MainWindow, _tray); }