private void OnTalkRightMenu(object sender, EventArgs args) { ExtMenuItem menuItem = sender as ExtMenuItem; UserInfo userInfo = menuItem.ExtraData as UserInfo; // Open Talk Frame TalkManager.AddTalkFrame(userInfo); }
private void OnInsertNetworkRightMenu(object sender, PopupMenu menu) { NetworkViewer networkViewer = sender as NetworkViewer; foreach (TreePath treePath in networkViewer.SelectedItems) { UserInfo userInfo = networkViewer.Store.GetUserInfo(treePath); ExtMenuItem menuItem = new ExtMenuItem("Talk", "TalkBubble", userInfo); menu.AddItem(menuItem, new EventHandler(OnTalkRightMenu)); } }
protected void OnFileSend(object sender, EventArgs args) { ExtMenuItem item = sender as ExtMenuItem; PeerSocket peer = (PeerSocket)P2PManager.KnownPeers[item.ExtraData]; // Send File Event if Peer != Null if (peer != null) { foreach (TreePath treePath in iconView.SelectedItems) { string fpath = this.store.GetFilePath(treePath); bool fisDir = this.store.GetIsDirectory(treePath); if (FileSend != null) { FileSend(peer, fpath, fisDir); } } } }
// ============================================ // PRIVATE Methods // ============================================ private void AddSendFileMenu(PopupMenu menu) { if (P2PManager.KnownPeers == null) { return; } if (P2PManager.KnownPeers.Count <= 0) { return; } PopupMenu subMenu = new PopupMenu(); menu.AddImageItem("Send", subMenu); foreach (UserInfo userInfo in P2PManager.KnownPeers.Keys) { ExtMenuItem item = new ExtMenuItem(userInfo.Name, userInfo); subMenu.AddItem(item, new EventHandler(OnFileSend)); } }