示例#1
0
        public TableView(Game subjectGame)
        {
            game            = subjectGame;
            this.subject    = game.table;
            coinStacks      = new CoinStackView[26];
            sourceIndex     = destIndex = -1;
            BorderStyle     = BorderStyle.FixedSingle;
            back            = Properties.Resources.bck;
            BackgroundImage = back;


            int xoffset;


            Width  = back.Width;
            Height = back.Height;

            Enabled = false;

            for (int i = 0; i < 26; i++)
            {
                coinStacks[i] = new CoinStackView(this, subject.GameTable[i], (i < 13), (i == 0 || i == 25));
                subject.GameTable[i].AssignView(coinStacks[i]);
                Controls.Add(coinStacks[i]);

                if (i < 1 || i > 24)
                {
                    coinStacks[i].Location    = new Point(penaltyX, penaltyY + ((i == 0 ? 0:1) * (coinStacks[i].Height + 10)));
                    coinStacks[i].Enabled     = false;
                    coinStacks[i].BorderStyle = BorderStyle.Fixed3D;
                    coinStacks[i].BackColor   = Color.DarkGray;
                }
                else
                {
                    xoffset = 0;

                    if (i > 6 && i < 13)
                    {
                        xoffset = -100;
                    }

                    if (i > 18)
                    {
                        xoffset = 100;
                    }

                    if (i < 13)
                    {
                        coinStacks[i].Location = new Point(xoffset + Width - ((i) * sprWidth), Height - coinStacks[i].Height);
                    }
                    else
                    {
                        coinStacks[i].Location = new Point(xoffset + (i - 13) * sprWidth, 0);
                    }
                }
            }


            sourceIndex = destIndex = -1;
        }
示例#2
0
 public void AssignView(CoinStackView View)
 {
     view = View;
 }