private void MouseSierraVgaOnLeftButtonUp(object sender, MouseButtonClickEventArgs e) { Interaction interaction; if (Mouse.Cursor == Cursors.Walk) { interaction = Interaction.Move; } else if (Mouse.Cursor == Cursors.Look) { interaction = Interaction.Eye; } else if (Mouse.Cursor == Cursors.Hand) { interaction = Interaction.Hand; } else if (Mouse.Cursor == Cursors.Talk) { interaction = Interaction.Mouth; } else { return; } InvokeGameInteraction(this, new GameInteractionEventArgs(e.X, e.Y, interaction)); }
private void MouseControllerOnRightButtonUp(object sender, MouseButtonClickEventArgs e) { if (Mouse.Cursor == Cursors.Walk) { Mouse.Cursor = Cursors.Look; } else if (Mouse.Cursor == Cursors.Look) { Mouse.Cursor = Cursors.Hand; } else if (Mouse.Cursor == Cursors.Hand) { Mouse.Cursor = Cursors.Talk; } else if (Mouse.Cursor == Cursors.Talk) { Mouse.Cursor = Cursors.Walk; } else { return; } Mouse.SaveCursorToBackup(); }
private void TalkBtnOnLeftMouseButtonUp(object sender, MouseButtonClickEventArgs e) { if (e.Button != MouseButton.Left) { return; } this.ChangeMouseCursor(Cursors.Talk); }
private void OptionsBtnOnLeftMouseButtonUp(object sender, MouseButtonClickEventArgs e) { if (e.Button != MouseButton.Left) { return; } Mouse.Center(); SierraVgaController.TextBox.Show("Work In Progress"); }
private void SubMenuBtnOnLeftMouseButtonUp(object sender, MouseButtonClickEventArgs e) { if (e.Button != MouseButton.Left) { return; } Mouse.Center(); SierraVgaController.ExtensionBar.Show(); }
private void MouseControllerOnButtonUp(object sender, MouseButtonClickEventArgs e) { if (Dialog.IsShownInCurrentLoopIteration) { return; } if (TextBox.IsVisible) { TextBox.Hide(); return; } if (ExtensionBar.IsVisible && !ExtensionBar.Intersects(Mouse.X, Mouse.Y)) { ExtensionBar.Hide(); return; } if (Rest.IsVisible && !Rest.Intersects(Mouse.X, Mouse.Y)) { Rest.Hide(); return; } if (Renderer.IsPaused) { return; } switch (e.Button) { case MouseButton.Left: MouseSierraVgaOnLeftButtonUp(sender, e); break; case MouseButton.Middle: MouseControllerOnMiddleButtonUp(sender, e); break; case MouseButton.Right: MouseControllerOnRightButtonUp(sender, e); break; // No action for extra buttons case MouseButton.X1: case MouseButton.X2: break; default: throw new ArgumentOutOfRangeException(); } }
/// <summary> /// Invoke event for when any mouse button is lifted up. Will not be invoked if mouse is /// outside of bounds for this UI component and aslo if it isn't visible. /// </summary> /// <param name="sender">The sender of this event.</param> /// <param name="e">The event args.</param> internal void InvokeMouseButtonUp(object sender, MouseButtonClickEventArgs e) { if (!Intersects(e.X, e.Y) || !IsVisible) { return; } MouseButtonUp?.Invoke(this, e); if (this is IChild) { (this as IChild)?.Child.InvokeMouseButtonUp(sender, e); } else if (this is IChildren) { (this as IChildren)?.Children.ForEach(c => c.InvokeMouseButtonUp(sender, e)); } }
private void MouseControllerOnMiddleButtonUp(object sender, MouseButtonClickEventArgs e) { Mouse.Cursor = Cursors.Walk; Mouse.SaveCursorToBackup(); }
private void MouseOnButtonUp(object sender, MouseButtonClickEventArgs e) { Dialogs.ForEach(d => d.InvokeMouseButtonUp(this, e)); Windows.ForEach(w => w.InvokeMouseButtonUp(this, e)); }
private void CancelBtnOnMouseButtonUp(object sender, MouseButtonClickEventArgs e) { Hide(); }
private void SleepBtnOnMouseButtonUp(object sender, MouseButtonClickEventArgs e) { Hide(); SierraVgaController.TextBox.Show("Work In Progress"); }
private void SideOnMouseButtonUp(object sender, MouseButtonClickEventArgs e) { Hide(); }
private void SleepOnMouseButtonUp(object sender, MouseButtonClickEventArgs e) { Hide(); SierraVgaController.Rest.Show(); }