public virtual void Update() { if (Enabled) { if (Bounds.Contains(MouseReader.Position)) { if (MouseReader.LeftClick()) { OnClick(new EventArgs()); } else if (MouseReader.LeftPressed()) { _buttonState = ButtonState.Pressed; } else { _buttonState = ButtonState.Hover; } } else { _buttonState = ButtonState.Normal; } } }
public void Update() { if (MouseReader.LeftClick()) { Point position = MouseReader.Position; if (Bounds.Contains(position)) { OnClick(new EventArgs()); } } }
public void Update(GameTime gameTime) { if (Enabled) { _snowyBackground.Update(gameTime); UpdateCamera(); if (DndItem != null) { Vector2 mousePosition = MouseReader.Position.ToVector2(); if (Bounds.Contains(mousePosition)) { FindSnapPosition(mousePosition); UpdateDndLayer(); UpdateRectangleDrawer(mousePosition); if (MouseReader.LeftClick()) { GameObject gameObject = (GameObject)DndItem.Clone(); gameObject.Position = Camera.ScreenToWorld(_snapPosition.GetValueOrDefault(mousePosition)); Items.Add(gameObject); } if (MouseReader.RightClick()) { for (int i = Items.Count - 1; i >= 0; --i) { if (Items[i].Bounds.Contains(Camera.ScreenToWorld(mousePosition))) { Items.RemoveAt(i); break; } } } } } } }