Example #1
0
        public DeckItemGUIModel(Models.CollectionDeckItem cdi, GUIPages.GUICollection parent_)
        {
            Parent = parent_;
            Card   = cdi.Card;
            count  = cdi.Count;

            // Border
            Border                 = new Border();
            Border.BorderBrush     = Brushes.Transparent;
            Border.BorderThickness = new Thickness(1);

            // Dockpanel
            dp = new DockPanel();

            // Label
            lbl                 = new Label();
            lbl.Background      = Brushes.Black;
            lbl.FontSize        = 14;
            lbl.Content         = count.ToString() + "x";
            lbl.Foreground      = Brushes.Lime;
            lbl.Opacity         = 0.8;
            lbl.BorderBrush     = Brushes.DarkGray;
            lbl.BorderThickness = new Thickness(1, 1, 0, 1);
            lbl.Width           = 25;

            //Button
            Style style = Parent.FindResource("cardButtonStyle") as Style;

            btn                       = new Button();
            btn.Style                 = style;
            btn.Cursor                = System.Windows.Input.Cursors.Hand;
            btn.Opacity               = 0.8;
            btn.Background            = Brushes.Black;
            btn.Height                = 32;
            btn.Width                 = 111;
            btn.HorizontalAlignment   = HorizontalAlignment.Left;
            btn.HorizontalAlignment   = HorizontalAlignment.Center;
            btn.Click                += Btn_Click;
            btn.MouseRightButtonDown += Btn_MouseRightButtonDown;
            btn.MouseRightButtonUp   += Btn_MouseRightButtonUp;

            // Textblock
            txt = new TextBlock();
            txt.LayoutTransform = new ScaleTransform(1, 0.9);
            txt.TextAlignment   = TextAlignment.Center;
            txt.Foreground      = Brushes.White;
            txt.TextWrapping    = TextWrapping.Wrap;
            txt.FontSize        = 11;
            txt.Text            = Card.Name;

            btn.Content = txt;

            dp.Children.Add(lbl);
            dp.Children.Add(btn);

            Border.Child = dp;
        }
Example #2
0
        // add a new card to deck while in Edit mode

        private void addCardToDeck(Models.Card card)
        {
            bool found;

            if (deck.Count == 40)
            {
                MessageBox.Show("This deck contains 40 cards. You cannot add any more.", "Warning", MessageBoxButton.OK, MessageBoxImage.Warning);
                return;
            }

            if (deck.addCard(card))
            {
                found = false;
                foreach (Models.DeckItemGUIModel dguim in listDeckContentGUI)
                {
                    if (dguim.Card.ID == card.ID)
                    {
                        dguim.increaseCount();
                        found = true;
                        break;
                    }
                }

                if (!found)
                {
                    Models.CollectionDeckItem collectionDeckItem = deck.getCollectionDeckItemByID(card.ID);
                    Models.DeckItemGUIModel   cguim = new Models.DeckItemGUIModel(collectionDeckItem, this);
                    listDeckContentGUI.Add(cguim);
                    stackDeckContents.Children.Add(cguim.Border);
                }
            }
            else
            {
                MessageBox.Show("You can only add a maximum of 4 copies of any card.", "Warning", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
        }