Пример #1
0
        protected override void OnMouseDown(MouseEventArgs e)
        {
            base.OnMouseDown(e);
            if (e.Button == MouseButtons.Left)
            {
                var draggedPosition = GetPosFromClickCoor(e.X, e.Y, false);
                var card            = TryGetCardFromPos(draggedPosition);
                if (card == null)
                {
                    return;
                }
                dragged       = draggedPosition;
                card.selected = true;
                card.Invalidate();
            }
            else if (e.Button == MouseButtons.Middle || e.Button == MouseButtons.Right)
            {
                var card = TryGetCardFromPos(GetPosFromClickCoor(e.X, e.Y, false));
                if (card == null)
                {
                    return;
                }

                // Reposition card form and draw.
                cardWindow.SetImage(DraftWindow.GetImage(card.cardName));
                float x     = card.Left + card.Width / 2f;
                float y     = card.Top + card.Height / 2f;
                Point point = PointToScreen(new Point((int)Math.Round(x), (int)Math.Round(y)));
                cardWindow.SetLocation(point);
                cardWindow.Show();
                Focus();
            }
        }
Пример #2
0
        protected override void OnMouseDown(MouseEventArgs e)
        {
            base.OnMouseDown(e);
            if (e.Button == System.Windows.Forms.MouseButtons.Left)
            {
                DeckBuilderCard card = GetCardFromCoor(e.X, e.Y);
                if (card == null)
                {
                    return;
                }
                draggedCard          = card;
                draggedCard.selected = true;
                draggedCard.Invalidate();
            }
            else if (e.Button == System.Windows.Forms.MouseButtons.Middle || e.Button == System.Windows.Forms.MouseButtons.Right)
            {
                DeckBuilderCard card = GetCardFromCoor(e.X, e.Y);
                if (card == null)
                {
                    return;
                }

                // Reposition card form and draw.
                cardWindow.SetImage(DraftWindow.GetImage(card.cardName));
                float x     = card.Left + card.Width / 2f;
                float y     = card.Top + card.Height / 2f;
                Point point = PointToScreen(new Point((int)Math.Round(x), (int)Math.Round(y)));
                cardWindow.SetLocation(point);
                cardWindow.Show();
                Focus();
            }
        }
Пример #3
0
        protected override void OnMouseDown(MouseEventArgs e)
        {
            base.OnMouseDown(e);
            if (e.Button == MouseButtons.Middle || e.Button == MouseButtons.Right)
            {
                // Find which card was clicked.
                int i = GetIndexFromCoor(e.X, e.Y);
                if (i == -1)
                {
                    return;
                }

                // Reposition card form and draw.
                cardWindow.SetImage(DraftWindow.GetImage(cardNames[i]));
                float x     = (i % perRow) * (spacing + CARD_WIDTH * scale) + spacing + (CARD_WIDTH * scale / 2);
                float y     = (i / perRow) * (spacing + CARD_HEIGHT * scale) + spacing + (CARD_HEIGHT * scale / 2);
                Point point = PointToScreen(new Point((int)Math.Round(x), (int)Math.Round(y)));
                cardWindow.SetLocation(point);
                cardWindow.Show();
                Focus();
            }
        }