private void MainDrawPB_MouseMove(object sender, MouseEventArgs e) { foreach (var item in ObjectsList) { Point screenLoc = new Point(e.X - Object.ClientXOffset, -(e.Y - Object.ClientYOffset)); //Console.WriteLine("MousePos= " + screenLoc.ToString() + " also " + e.Location.ToString()); if (item.Value.Contain(screenLoc)) { ToolTipsSelectedObj = item.Value; ToolTipsInfo.name = item.Value.GetName(); ToolTipsInfo.gameCoord = item.Value.GetGameCoord(); if (item.Value.GetLinkedRow() != null) { ToolTipsInfo.id = item.Value.GetLinkedRow().Cells[0].Value.ToString(); item.Value.GetLinkedRow().Selected = true; } else { ToolTipsInfo.id = "Master_ID"; } ToolTipsRectangle.X = e.X; ToolTipsRectangle.Y = e.Y - ToolTipsRectangle.Height; tooltipsShow = true; MainDrawPB.Invalidate(); return; } } ToolTipsSelectedObj = null; tooltipsShow = false; MainDrawPB.Invalidate(); }
private void RemoveObject(int idx) { if (ObjectsList.Remove(idx)) { MainDrawPB.Invalidate(); } }
private void ClearObjects() { ObjectsList.Clear(); ObjectsList.Add(0, new Master(VirtualClientSize)); MainDataDGV.Rows.Clear(); MainDrawPB.Invalidate(); }
private void AddObject(DataGridViewRow currRow, SlaveDataEntry slaveEntry) { Slave slave = null; Object obj = null; currRow.Tag = slaveEntry.ID; if (!ObjectsList.TryGetValue(slaveEntry.ID, out obj)) { slave = new Slave(VirtualClientSize); } else { slave = obj as Slave; } Vector2 orig = new Vector2(0, slaveEntry.Distance * ClientRatio); Vector2 rotPos = Rotate(orig, slaveEntry.Angle); Vector2 finalPoint = rotPos; int x, y; x = Convert.ToInt32(finalPoint.X); y = Convert.ToInt32(finalPoint.Y); slave.SetBaseGamePos(CurrentSelectedEntry.MasterX, CurrentSelectedEntry.MasterY, CurrentSelectedEntry.MasterO); slave.SetScreenPosition(new Point(x, y)); slave.SetLinkedRow(currRow); if (obj == null) { ObjectsList.Add(slaveEntry.ID, slave); } MainDrawPB.Invalidate(); }