private void listBox1_MouseDown(object sender, MouseEventArgs e) { try { if (e.Button == MouseButtons.Right) { listBox1.SelectedIndex = listBox1.IndexFromPoint(e.X, e.Y); } if (listBox1.SelectedItem != null && e.Button == MouseButtons.Right) { int index = listBox1.IndexFromPoint(e.X, e.Y); if (listBox1.SelectedIndex == index && listBox1.SelectedItem.ToString().Contains(" (online)")) { String itemChosen = listBox1.SelectedItem.ToString().Substring(0, listBox1.SelectedItem.ToString().IndexOf(" (online")); var user = Program.TasClient.ExistingUsers.Values.SingleOrDefault(x => x.Name.ToString().ToUpper() == itemChosen.ToUpper()); var cm = ContextMenus.GetPlayerContextMenu(user, false); cm.Show(this, new Point(e.X + 10, e.Y + 15)); } else if (listBox1.SelectedIndex == index && !listBox1.SelectedItem.ToString().Contains(" (online)")) { String itemChosen = listBox1.SelectedItem.ToString(); var user = LobbyClient.User.Create(itemChosen); var cm = ContextMenus.GetPlayerContextMenu(user, false); cm.Show(this, new Point(e.X + 10, e.Y + 15)); } } } catch { } }
void ShowPlayerContextMenu(User user, Control control, Point location) { var contextMenu = ContextMenus.GetPlayerContextMenu(user, this is BattleChatControl); try { Program.ToolTip.Visible = false; contextMenu.Show(control, location); } catch (Exception ex) { Trace.TraceError("Error displaying tooltip:{0}", ex); } finally { Program.ToolTip.Visible = true; } }
void autoscrollRichTextBox1_MouseUp(object sender, MouseEventArgs me) { var word = ChatBox.HoveredWord.TrimEnd(); if (word != null) { var user = Program.TasClient.ExistingUsers.Values.SingleOrDefault(x => x.Name.ToString().ToUpper() == word.ToUpper()); if (user != null) { if (me.Button == MouseButtons.Right || !Program.Conf.LeftClickSelectsPlayer) { ContextMenus.GetPlayerContextMenu(user, false).Show(this, me.Location); return; } } } if (me.Button == MouseButtons.Right) { ContextMenus.GetPrivateMessageContextMenu(this).Show(this, me.Location); } }
void playerBox_MouseDown(object sender, MouseEventArgs mea) { if (mea.Button == MouseButtons.Left) { if (playerBox.HoverItem != null) { if (playerBox.HoverItem.IsSpectatorsTitle) { ActionHandler.Spectate(); } else if (playerBox.HoverItem.SlotButton != null) { ActionHandler.JoinSlot(playerBox.HoverItem.MissionSlot); } else if (playerBox.HoverItem.AllyTeam.HasValue) { ActionHandler.JoinAllyTeam(playerBox.HoverItem.AllyTeam.Value); } } } if (mea.Button == MouseButtons.Right || !Program.Conf.LeftClickSelectsPlayer) { if (playerBox.HoverItem == null && mea.Button == MouseButtons.Right) { var cm = ContextMenus.GetPlayerContextMenu(Program.TasClient.MyUser, true); Program.ToolTip.Visible = false; try { cm.Show(playerBox, mea.Location); } catch (Exception ex) { Trace.TraceError("Error displaying tooltip: {0}", ex); } finally { Program.ToolTip.Visible = true; } } } if (playerBox.HoverItem != null) { if (playerBox.HoverItem.BotBattleStatus != null) { playerBox.SelectedItem = playerBox.HoverItem; var cm = ContextMenus.GetBotContextMenu(playerBox.HoverItem.BotBattleStatus.Name); Program.ToolTip.Visible = false; try { cm.Show(playerBox, mea.Location); } catch (Exception ex) { Trace.TraceError("Error displaying tooltip: {0}", ex); } finally { Program.ToolTip.Visible = true; } } /* * if (playerBox.HoverItem.UserBattleStatus != null) { * playerBox.SelectedItem = playerBox.HoverItem; * var cm = ContextMenus.GetPlayerContextMenu(playerBox.HoverItem.User, true); * Program.ToolTip.Visible = false; * cm.Show(playerBox, mea.Location); * Program.ToolTip.Visible = true; * }*/ } }
protected override void PlayerBox_MouseClick(object sender, MouseEventArgs mea) { if (mea.Button == MouseButtons.Left) { if (this.playerBox.HoverItem != null) { if (this.playerBox.HoverItem.IsSpectatorsTitle) { ActionHandler.Spectate(); } else if (this.playerBox.HoverItem.Button != null) { ActionHandler.JoinAllyTeam(this.playerBox.HoverItem.AllyTeam.Value); } } } if (mea.Button == MouseButtons.Right || !Program.Conf.LeftClickSelectsPlayer) { if (this.playerBox.HoverItem == null && mea.Button == MouseButtons.Right) { //right click on empty space var cm = ContextMenus.GetPlayerContextMenu(Program.TasClient.MyUser, true); Program.ToolTip.Visible = false; try { cm.Show(playerBox, mea.Location); } catch (Exception ex) { Trace.TraceError("Error displaying tooltip: {0}", ex); } finally { Program.ToolTip.Visible = true; } return; } //NOTE: code that display player's context menu on Left-mouse-click is in ChatControl.playerBox_MouseClick(); } if (this.playerBox.HoverItem != null) { if (this.playerBox.HoverItem.BotBattleStatus != null) { playerBox.SelectedItem = this.playerBox.HoverItem; var cm = ContextMenus.GetBotContextMenu(this.playerBox.HoverItem.BotBattleStatus.Name); Program.ToolTip.Visible = false; try { cm.Show(playerBox, mea.Location); } catch (Exception ex) { Trace.TraceError("Error displaying tooltip: {0}", ex); } finally { Program.ToolTip.Visible = true; } return; } /* * if (playerBox.HoverItem.UserBattleStatus != null) { * playerBox.SelectedItem = playerBox.HoverItem; * var cm = ContextMenus.GetPlayerContextMenu(playerBox.HoverItem.User, true); * Program.ToolTip.Visible = false; * cm.Show(playerBox, mea.Location); * Program.ToolTip.Visible = true; * }*/ } base.PlayerBox_MouseClick(sender, mea); }