コード例 #1
0
        /// <summary>
        /// Handle change of connection status
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void _connectionReceive_StatusChanged(object sender, StatusEventArgs e)
        {
            if (e.IsOnline)
            {
                if (Settings.Instance.ShowSystemPopups)
                {
                    AppTray.Message(System.Windows.Forms.ToolTipIcon.Warning, "Connection established.");
                }

                foreach (var contact in Contacts)
                {
                    contact.IsConnectionLost = false;
                }
            }
            else
            {
                if (Settings.Instance.ShowSystemPopups)
                {
                    AppTray.Message(System.Windows.Forms.ToolTipIcon.Warning, "Connection lost.");
                }

                foreach (var contact in Contacts)
                {
                    contact.IsOnline         = false;
                    contact.IsConnectionLost = true;
                }
            }

            StatusChanged?.Invoke(sender, e);
        }
コード例 #2
0
        private void ProcessMessage(MessageEventArgs e)
        {
            if (!e.Message.IsNotification)
            {
                var window = GetWindow(e.Message.Address, true, true, false);
                if (window != null)
                {
                    // Отобразим сообщение в окне чата
                    ((ChatViewModel)window.DataContext).DisplayMessage(e.Message);

                    if (!window.IsActive && e.Activate)
                    {
                        // Мигание окна
                        window.FlashWindow(false);

                        // Сообщение в трее
                        AppTray.Message(ToolTipIcon.None, e.Message.Text, window.Title, tag: e.Message.Address);
                    }
                }
            }
            else
            {
                var window = GetWindow(e.Message.To, false, false, false);
                if (window != null)
                {
                    // Отобразим подтверждение о получении в окне чата
                    ((ChatViewModel)window.DataContext).DisplayMessage(e.Message);
                }
            }
        }
コード例 #3
0
 public void TrayStoppingStatus()
 {
     AppTray.Icon            = Properties.Resources.connection_icon_yellow;
     AppTray.BalloonTipIcon  = ToolTipIcon.Info;
     AppTray.BalloonTipTitle = "WiFi Hotspot Status";
     AppTray.BalloonTipText  = "Stopping Hotspot...";
     AppTray.ShowBalloonTip(500);
 }
コード例 #4
0
 public void TrayErrorStatus()
 {
     AppTray.Icon            = Properties.Resources.connection_icon_red;
     AppTray.BalloonTipIcon  = ToolTipIcon.Info;
     AppTray.BalloonTipTitle = "WiFi Hotspot Status";
     AppTray.BalloonTipText  = "Hotspot couldn't be started...";
     AppTray.ShowBalloonTip(500);
 }
コード例 #5
0
 public void TrayStartedStatus()
 {
     AppTray.Icon            = Properties.Resources.connection_icon_green;
     AppTray.BalloonTipIcon  = ToolTipIcon.Info;
     AppTray.BalloonTipTitle = "WiFi Hotspot Status";
     AppTray.BalloonTipText  = "Hotspot Started...";
     AppTray.ShowBalloonTip(500);
 }