void Default_PropertyChanged(object sender, PropertyChangedEventArgs e) { if (e.PropertyName == "AlwaysInTray") { if (Properties.Settings.Default.AlwaysInTray) ChangeIconInTray(IconInTrayState.Normal); else { if (currentState == BlipFaceWindowsState.InTray && Properties.Settings.Default.MinimalizeToTray == false) { ChangeIconInTray(IconInTrayState.None); currentState = BlipFaceWindowsState.Minimalize; WindowState = WindowState.Minimized; } } } }
/// <summary> /// Logika minimalizowania BlipFace /// </summary> private void MinimalizeBlipFaceWindows() { if (Properties.Settings.Default.MinimalizeToTray) { this.Hide(); ChangeIconInTray(IconInTrayState.Normal); if (showBallon) { taskbarIcon.ShowBalloonTip("BlipFace", "BlipFace został zminimalizowany, jeżeli chcesz go zobaczyć jeszcze raz kliknij na ikonę.", BalloonIcon.Info); showBallon = false; } currentState = BlipFaceWindowsState.InTray; } else { WindowState = WindowState.Minimized; currentState = BlipFaceWindowsState.Minimalize; if (Properties.Settings.Default.AlwaysInTray) currentState = BlipFaceWindowsState.MinimalizeAndInTray; } }
/// <summary> /// Logika przywracania BlipFace do normalnego wyglądu /// </summary> public void ToNormalBlipFaceWindows() { if (!IsVisible) Show(); WindowState = WindowState.Normal; currentState = BlipFaceWindowsState.Normal; if (Properties.Settings.Default.AlwaysInTray) { ChangeIconInTray(IconInTrayState.Normal); } else { ChangeIconInTray(IconInTrayState.None); } }
public HostWindow() { InitializeComponent(); lblVersion.Content = "BlipFace v"+ Settings.Default.Version.Substring(0,5); //położenie okna //this.Left = System.Windows.SystemParameters.PrimaryScreenWidth - this.Width - 20; //ikona dla aplikacji, pozakuje się na pasku //blipFace_logo_round.png" Uri iconUri = new Uri("pack://application:,,,/Resource/Img/blipFace.ico", UriKind.RelativeOrAbsolute); this.Icon = BitmapFrame.Create(iconUri); normalNotifyIcon = IconFromResource(iconUri.ToString()); statusAddedNotifyIcon = IconFromResource("pack://application:,,,/Resource/Img/blipFaceNewStatus.ico"); taskbarIcon.Icon = normalNotifyIcon; //ustawienie ikony w tray'u kiedy jest ustawiona opcja aby była ona tam ciągle if (Properties.Settings.Default.AlwaysInTray) ChangeIconInTray(IconInTrayState.Normal); mgr = new ViewsManager(this); //gdy zmienią się ustawienia aplikacji trzeba ustawić odpowiednie elementy okna //todo:trzeba pomyśleć jak to zrobić inaczej Properties.Settings.Default.PropertyChanged += new PropertyChangedEventHandler(Default_PropertyChanged); currentState = BlipFaceWindowsState.Normal; }