private void chatPanel_MessageNotification(BitChat chat, BitChat.Peer messageSender, string message) { if (!chat.Mute) { _sndMessageNotification.Play(); } }
public bool IsThisDownloadPeerSet(BitChat.Peer fromPeer) { lock (peerLock) { return((_peer != null) && (fromPeer.Equals(_peer))); } }
internal void peer_StateChanged(object sender, EventArgs e) { BitChat.Peer peer = sender as BitChat.Peer; string message; if (peer.IsOnline) { message = peer.PeerCertificate.IssuedTo.Name + " is online"; } else { message = peer.PeerCertificate.IssuedTo.Name + " is offline"; } AddMessage(new ChatMessageInfoItem(message, DateTime.Now)); if (!_chatItem.Selected) { _chatItem.SetNewMessage(message); } if (_chat.NetworkType == BitChatClient.Network.BitChatNetworkType.PrivateChat) { _chatItem.SetTitle(peer.PeerCertificate.IssuedTo.Name); this.Title = peer.PeerCertificate.IssuedTo.Name + " <" + peer.PeerCertificate.IssuedTo.EmailAddress.Address + ">"; } }
public frmMessageInfo(BitChat.Peer selfPeer, MessageItem message) { _message = message; this.SuspendLayout(); InitializeComponent(); chatMessageDisplay = new ChatMessageTextItem(selfPeer, _message); chatMessageDisplay.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; chatMessageDisplay.Width = chatMessagePanel.Width - 30; chatMessageDisplay.ContextMenuStrip = null; if (chatMessageDisplay.Height > 150) { chatMessagePanel.Height = 140; } else { chatMessagePanel.Height = chatMessageDisplay.Height + 10; int heightDiff = 150 - chatMessagePanel.Height; this.Height -= heightDiff; listView1.Top -= heightDiff; btnClose.Top -= heightDiff; } chatMessagePanel.Controls.Add(chatMessageDisplay); this.ResumeLayout(); }
private void chat_MessageReceived(BitChat.Peer peer, MessageItem message) { if (message.Type != MessageType.Info) { MessageNotification(_chat, peer, message.Message); } }
private void chat_FileAdded(BitChat.Peer peer, MessageItem message, SharedFile sharedFile) { ChatMessageFileItem fileItem = new ChatMessageFileItem(peer, message, sharedFile); AddMessage(fileItem, true); fileItem.ShareFile += FileItem_ShareFile; }
private void chat_PeerAdded(BitChat sender, BitChat.Peer peer) { _chat.WriteInfoMessage(peer.PeerCertificate.IssuedTo.Name + " joined chat"); if (sender.NetworkType == BitChatCore.Network.BitChatNetworkType.PrivateChat) { this.Title = peer.PeerCertificate.IssuedTo.Name + " <" + peer.PeerCertificate.IssuedTo.EmailAddress.Address + ">"; } }
public void RemoveDownloadPeer(BitChat.Peer peer) { lock (peerLock) { if ((_peer != null) && (peer.Equals(_peer))) { _peer = null; } } }
private void _chat_PeerAdded(BitChat sender, BitChat.Peer peer) { AddMessage(new ChatMessageInfoItem(peer.PeerCertificate.IssuedTo.Name + " joined chat", DateTime.Now)); if (sender.NetworkType == BitChatClient.Network.BitChatNetworkType.PrivateChat) { _chatItem.SetTitle(peer.PeerCertificate.IssuedTo.Name); this.Title = peer.PeerCertificate.IssuedTo.Name + " <" + peer.PeerCertificate.IssuedTo.EmailAddress.Address + ">"; } }
private void chat_PeerAdded(BitChat chat, BitChat.Peer peer) { if (_chat.NetworkType == BitChatCore.Network.BitChatNetworkType.PrivateChat) { SetTitle(peer.PeerCertificate.IssuedTo.Name); _peer = peer; peer.ProfileImageChanged += peer_ProfileImageChanged; peer.StateChanged += peer_StateChanged; } }
private void chat_FileAdded(BitChat.Peer peer, MessageItem message, BitChatCore.FileSharing.SharedFile sharedFile) { if (peer.IsSelf) { SetLastMessage("file was shared", message.MessageDate, true); } else { SetLastMessage(peer.PeerCertificate.IssuedTo.Name + " shared a file", message.MessageDate, true); } }
private void chat_MessageDeliveryNotification(BitChat.Peer sender, MessageItem message) { foreach (Control item in customListView1.Controls) { ChatMessageTextItem msgItem = item as ChatMessageTextItem; if ((msgItem != null) && (msgItem.Message.MessageNumber == message.MessageNumber)) { msgItem.DeliveryNotification(message); break; } } }
private void peer_StateChanged(object sender, EventArgs e) { BitChat.Peer peer = sender as BitChat.Peer; if (peer.IsOnline) { MessageNotification(_chat, null, peer.PeerCertificate.IssuedTo.Name + " is online"); } else { MessageNotification(_chat, null, peer.PeerCertificate.IssuedTo.Name + " is offline"); } }
private void _chat_MessageReceived(BitChat.Peer sender, string message) { bool myMessage = sender.PeerCertificate.IssuedTo.EmailAddress.Address.Equals(_chat.LocalCertificate.IssuedTo.EmailAddress.Address); AddMessage(new ChatMessageItem(sender, message, DateTime.Now, myMessage)); if (!_chatItem.Selected) { _chatItem.SetNewMessage(sender.PeerCertificate.IssuedTo.Name + ": " + message); } ShowPeerTypingNotification(sender.PeerCertificate.IssuedTo.Name, false); }
private void chat_FileAdded(BitChat.Peer peer, MessageItem message, SharedFile sharedFile) { SharedFileItem item = new SharedFileItem(sharedFile, _chat); item.FileRemoved += sharedFile_FileRemoved; item.ShareFile += view_ShareFile; lstFiles.AddItem(item); if (!peer.IsSelf) { MessageNotification(_chat, null, peer.PeerCertificate.IssuedTo.Name + " shared a file"); } }
public bool SetDownloadPeer(BitChat.Peer peer) { lock (peerLock) { if ((_peer == null) || (peer == null)) { _peer = peer; _lastResponse = DateTime.UtcNow; return(true); } } return(false); }
internal void AddPeer(BitChat.Peer peer) { lock (_peers) { if (!_peers.Contains(peer)) { _peers.Add(peer); if (PeerCountUpdate != null) { RaiseEventPeerCountUpdate(); } } } }
internal void AddSeeder(BitChat.Peer seeder) { lock (_seeders) { if (!_seeders.Contains(seeder)) { _seeders.Add(seeder); if (PeerCountUpdate != null) { RaiseEventPeerCountUpdate(); } } } }
private void peer_StateChanged(object sender, EventArgs e) { BitChat.Peer peer = sender as BitChat.Peer; SetTitle(peer.PeerCertificate.IssuedTo.Name); if (peer.IsOnline) { peer_ProfileImageChanged(sender, e); } else { SetImageIcon(null); } }
internal bool PeerExists(BitChat.Peer peer) { lock (_seeders) { if (_seeders.Contains(peer)) { return(true); } } lock (_peers) { return(_peers.Contains(peer)); } }
private void chatPanel_MessageNotification(BitChat chat, BitChat.Peer messageSender, string message) { if (!chat.Mute && (!this.Visible || !ApplicationIsActivated())) { if ((messageSender == null) || (chat.NetworkType == BitChatCore.Network.BitChatNetworkType.PrivateChat)) { notifyIcon1.ShowBalloonTip(30000, chat.NetworkDisplayName + " - Bit Chat", message, ToolTipIcon.Info); } else { notifyIcon1.ShowBalloonTip(30000, chat.NetworkDisplayName + " - Bit Chat", messageSender.PeerCertificate.IssuedTo.Name + ": " + message, ToolTipIcon.Info); } _sndMessageNotification.Play(); } }
private void chatPanel_MessageNotification(BitChat sender, BitChat.Peer messageSender, string message) { if (!this.Visible || !ApplicationIsActivated()) { if (messageSender == null) { notifyIcon1.ShowBalloonTip(30000, sender.NetworkName + " - Bit Chat", message, ToolTipIcon.Info); } else { notifyIcon1.ShowBalloonTip(30000, sender.NetworkName + " - Bit Chat", messageSender.PeerCertificate.IssuedTo.Name + ": " + message, ToolTipIcon.Info); } sndMessageNotification.Play(); } }
public UserListItem(BitChat.Peer peer) { InitializeComponent(); _peer = peer; _peer.StateChanged += peer_StateChanged; _peer.NetworkStatusUpdated += peer_NetworkStatusUpdated; _peer.ProfileImageChanged += peer_ProfileImageChanged; if (_peer.PeerCertificate.IssuedTo.FieldExists(CertificateProfileFlags.Name)) { string name = _peer.PeerCertificate.IssuedTo.Name; if (name.Length > 0) { labIcon.Text = name.Substring(0, 1).ToUpper(); int x = name.LastIndexOf(" ", StringComparison.CurrentCultureIgnoreCase); if (x > 0) { labIcon.Text += name.Substring(x + 1, 1).ToUpper(); } else if (name.Length > 1) { labIcon.Text += name.Substring(1, 1).ToLower(); } } else { labIcon.Text = ""; } labName.Text = name; } else { labIcon.Text = ""; labName.Text = "{missing name}"; labName.ForeColor = Color.Red; } labEmail.Text = _peer.PeerCertificate.IssuedTo.EmailAddress.Address; peer_StateChanged(null, null); peer_NetworkStatusUpdated(null, null); }
private void chat_PeerTyping(BitChat chat, BitChat.Peer peer) { //show typing notification if ((_chat.NetworkType == BitChatCore.Network.BitChatNetworkType.PrivateChat) && !peer.IsSelf) { labLastMessage.Text = "typing..."; } else { labLastMessage.Text = peer.PeerCertificate.IssuedTo.Name + " is typing..."; } labLastMessage.ForeColor = Color.FromArgb(255, 213, 89); timerTypingNotification.Stop(); timerTypingNotification.Start(); }
public ChatMessageItem(BitChat.Peer senderPeer, string message, DateTime date, bool myMessage) { InitializeComponent(); _senderPeer = senderPeer; _date = date; lblUsername.Text = _senderPeer.PeerCertificate.IssuedTo.Name; txtMessage.Text = message; lblDateTime.Text = date.ToShortTimeString(); if (myMessage) { lblUsername.ForeColor = Color.FromArgb(63, 186, 228); } OnResize(EventArgs.Empty); }
private void chat_MessageReceived(BitChat.Peer sender, MessageItem message) { if (message.Type == MessageType.Info) { AddMessage(new ChatMessageInfoItem(message), sender.IsSelf); } else { AddMessage(new ChatMessageTextItem(sender, message), sender.IsSelf); string msg = message.Message; if (msg.Length > 100) { msg = msg.Substring(0, 100); } ShowPeerTypingNotification(sender.PeerCertificate.IssuedTo.Name, false); } }
private void chat_MessageReceived(BitChat.Peer peer, MessageItem message) { if (message.Type != MessageType.Info) { string msg = message.Message; if (msg.Length > 100) { msg = msg.Substring(0, 100); } if (peer.IsSelf) { SetLastMessage(msg, message.MessageDate, true); } else { SetLastMessage(peer.PeerCertificate.IssuedTo.Name + ": " + msg, message.MessageDate, true); } } }
public ChatListItem(BitChat chat) { InitializeComponent(); _chat = chat; SetTitle(_chat.NetworkDisplayName); labLastMessage.Text = ""; SetLastMessageDate(); ResetUnreadMessageCount(); _chat.FileAdded += chat_FileAdded; _chat.MessageReceived += chat_MessageReceived; _chat.PeerAdded += chat_PeerAdded; _chat.PeerTyping += chat_PeerTyping; if (_chat.NetworkType == BitChatCore.Network.BitChatNetworkType.PrivateChat) { foreach (BitChat.Peer peer in _chat.GetPeerList()) { if (!peer.IsSelf) { _peer = peer; peer.ProfileImageChanged += peer_ProfileImageChanged; peer.StateChanged += peer_StateChanged; } } } else { SetImageIcon(_chat.GroupImage); _chat.GroupImageChanged += chat_GroupImageChanged; } this.GoOffline = (_chat.NetworkStatus == BitChatCore.Network.BitChatNetworkStatus.Offline); _chatPanel = new BitChatPanel(_chat, this); _chatPanel.Dock = DockStyle.Fill; }
internal void RemovePeerOrSeeder(BitChat.Peer peer) { //remove from peers lock (_peers) { if (_peers.Remove(peer)) { if (PeerCountUpdate != null) { RaiseEventPeerCountUpdate(); } } } //remove from seeds lock (_seeders) { if (_seeders.Remove(peer)) { if (PeerCountUpdate != null) { RaiseEventPeerCountUpdate(); } } } //remove from downloading blocks if (_downloadingBlocks != null) { lock (_downloadingBlocks) { foreach (FileBlockDownloadManager download in _downloadingBlocks) { download.RemoveDownloadPeer(peer); } } } }
private void peer_StateChanged(object sender, EventArgs e) { BitChat.Peer peer = sender as BitChat.Peer; string message; if (peer.IsOnline) { message = peer.PeerCertificate.IssuedTo.Name + " is online"; } else { message = peer.PeerCertificate.IssuedTo.Name + " is offline"; } _chat.WriteInfoMessage(message); if (_chat.NetworkType == BitChatCore.Network.BitChatNetworkType.PrivateChat) { _view.Title = peer.PeerCertificate.IssuedTo.Name + " <" + peer.PeerCertificate.IssuedTo.EmailAddress.Address + ">"; } MessageNotification(_chat, null, message); }
public void RemoveDownloadPeer(BitChat.Peer peer) { lock (peerLock) { if ((_peer != null) && (peer.Equals(_peer))) _peer = null; } }
public bool SetDownloadPeer(BitChat.Peer peer) { lock (peerLock) { if ((_peer == null) || (peer == null)) { _peer = peer; _lastResponse = DateTime.UtcNow; return true; } } return false; }