private void HandleMouseInput() { Point position = Mouse.Position; Control gump = GetMouseOverControl(position); if (MouseOverControl != null && gump != MouseOverControl) { MouseOverControl.InvokeMouseExit(position); if (MouseOverControl.RootParent != null) { if (gump == null || gump.RootParent != MouseOverControl.RootParent) { MouseOverControl.RootParent.InvokeMouseExit(position); } } } if (gump != null) { if (gump != MouseOverControl) { gump.InvokeMouseEnter(position); if (gump?.RootParent != null) { if (MouseOverControl == null || gump.RootParent != MouseOverControl.RootParent) { gump.RootParent.InvokeMouseEnter(position); } } } gump.InvokeMouseOver(position); if (_mouseDownControls[0] == gump) { AttemptDragControl(gump, position); } //if (_isDraggingControl) // DoDragControl(position); } MouseOverControl = gump; for (int i = 0; i < 5; i++) { if (_mouseDownControls[i] != null && _mouseDownControls[i] != gump) { _mouseDownControls[i].InvokeMouseOver(position); } } }
private static void HandleMouseInput() { Control gump = GetMouseOverControl(Mouse.Position); if (MouseOverControl != null && gump != MouseOverControl) { MouseOverControl.InvokeMouseExit(Mouse.Position); if (MouseOverControl.RootParent != null) { if (gump == null || gump.RootParent != MouseOverControl.RootParent) { MouseOverControl.RootParent.InvokeMouseExit(Mouse.Position); } } } if (gump != null) { if (gump != MouseOverControl) { gump.InvokeMouseEnter(Mouse.Position); if (gump.RootParent != null) { if (MouseOverControl == null || gump.RootParent != MouseOverControl.RootParent) { gump.RootParent.InvokeMouseEnter(Mouse.Position); } } } gump.InvokeMouseOver(Mouse.Position); //if (_mouseDownControls[0] == gump) //{ // if (ProfileManager.Current == null || !ProfileManager.Current.HoldAltToMoveGumps || Keyboard.Alt) // { // AttemptDragControl(gump, Mouse.Position); // } //} } MouseOverControl = gump; for (int i = 0; i < 5; i++) { if (_mouseDownControls[i] != null && _mouseDownControls[i] != gump) { _mouseDownControls[i].InvokeMouseOver(Mouse.Position); } } }
private static void HandleMouseInput() { Control gump = GetMouseOverControl(Mouse.Position); if (MouseOverControl != null && gump != MouseOverControl) { MouseOverControl.InvokeMouseExit(Mouse.Position); if (MouseOverControl.RootParent != null) { if (gump == null || gump.RootParent != MouseOverControl.RootParent) { MouseOverControl.RootParent.InvokeMouseExit(Mouse.Position); } } } if (gump != null) { if (gump != MouseOverControl) { gump.InvokeMouseEnter(Mouse.Position); if (gump.RootParent != null) { if (MouseOverControl == null || gump.RootParent != MouseOverControl.RootParent) { gump.RootParent.InvokeMouseEnter(Mouse.Position); } } } gump.InvokeMouseOver(Mouse.Position); } MouseOverControl = gump; for (int i = 0; i < 5; i++) { if (_mouseDownControls[i] != null && _mouseDownControls[i] != gump) { _mouseDownControls[i].InvokeMouseOver(Mouse.Position); } } }