/// <summary>
        /// Takes in an existing or loaded division and adds it to the list of available divisions
        /// </summary>
        /// <param name="div">The existing division, mostl likely loaded from a saved file</param>
        public void loadInDivision(DivisionModel div)
        {
            if (divisionsHolderPanel.Children.Count < MAX_DIVISIONS)
            {
                int        divNumber = divisionsHolderPanel.Children.Count + 1;
                DivisionUC division  = new DivisionUC(prizes, divNumber);
                division.DivModel = div;
                division.setDataContextToModel();
                division.DivModel.DivisionNumber = divNumber;
                division.DivModel.levelBoxes     = div.levelBoxes;
                division.Margin           = new Thickness(marginAmount, marginAmount, 0, 0);
                division.SectionContainer = this;

                division.setupLoadedDivision();
                division.updateDivision();

                divisionsHolderPanel.Children.Add(division);
                this.addListener(division);
                validateDivision();
            }

            if (divisionsHolderPanel.Children.Count >= MAX_DIVISIONS)
            {
                addDivisionButton.IsEnabled = false;
                addDivisionButton.Opacity   = 0.3;
            }
            isSectionEmpty();
            divisionCounterLabel.Content = divisionsHolderPanel.Children.Count;
        }
        /// <summary>
        /// Adds a new division to the GUI and the list of divisions,
        /// if the list hasn't exceeded 30 divisions
        ///     If it has, the add button is disabled and grayed out
        /// </summary>
        public void addDivision()
        {
            if (divisionsList.getSize() < MAX_DIVISIONS)
            {
                DivisionUC divUC = new DivisionUC(prizes, divisionsList.getSize() + 1);
                divUC.DivModel.DivisionNumber = divisionsList.getSize() + 1;
                divUC.updateDivision();
                divUC.Margin           = new Thickness(marginAmount, marginAmount, 0, 0);
                divUC.SectionContainer = this;

                divisionsHolderPanel.Children.Add(divUC);
                divisionsList.addDivision(divUC.DivModel);
                this.addListener(divUC);
                validateDivision();
            }

            if (divisionsList.getSize() >= MAX_DIVISIONS)
            {
                addDivisionButton.IsEnabled = false;
                addDivisionButton.Opacity   = 0.3;
            }

            divisionCounterLabel.Content = divisionsHolderPanel.Children.Count;
            isSectionEmpty();
        }
        public void addDivision()
        {
            if (divisionsList.getSize() < MAX_DIVISIONS)
            {
                DivisionUC divUC = new DivisionUC(prizes, divisionsList.getSize() + 1);
                divUC.DivModel.DivisionNumber = divisionsList.getSize() + 1;
                divUC.updateDivision();
                divUC.Margin = new Thickness(marginAmount, marginAmount, 0, 0);
                divUC.SectionContainer = this;

                divisionsHolderPanel.Children.Add(divUC);
                divisionsList.addDivision(divUC.DivModel);
                this.addListener(divUC);
                validateDivision();
            }

            if (divisionsList.getSize() >= MAX_DIVISIONS)
            {
                addDivisionButton.IsEnabled = false;
                addDivisionButton.Opacity = 0.3;
            }

            divisionCounterLabel.Content = divisionsHolderPanel.Children.Count;
            isSectionEmpty();
        }
 public PrizeLevelBox(DivisionUC div, LevelBox box)
 {
     InitializeComponent();
     division = div;
     levelModel = box;
     levelBox.DataContext = levelModel;
     prizeLevelLabel.DataContext = levelModel;
 }
 public PrizeLevelBox(DivisionUC div, LevelBox box)
 {
     InitializeComponent();
     division                    = div;
     levelModel                  = box;
     levelBox.DataContext        = levelModel;
     prizeLevelLabel.DataContext = levelModel;
 }
Exemple #6
0
        public int CompareTo(object obj)
        {
            if (obj == null)
            {
                return(1);
            }

            DivisionUC div = (DivisionUC)obj;

            return(div.DivModel.CompareTo(this.DivModel));
        }
        /// <summary>
        /// Removes a division from the list and the UI at the specified index
        /// </summary>
        /// <param name="index">the index location of the division to remove</param>
        public void removeDivision(int index)
        {
            for (int i = index; i < divisionsList.getSize(); i++)
            {
                DivisionUC div = (DivisionUC)divisionsHolderPanel.Children[i];
                div.DivModel.DivisionNumber = (int)div.DivModel.DivisionNumber - 1;
            }

            ErrorService.Instance.resolveWarning("005", new List <string> {
                ((DivisionUC)divisionsHolderPanel.Children[index]).DivModel.DivisionNumber.ToString()
            }, ((DivisionUC)divisionsHolderPanel.Children[index]).DivModel.errorID);
            listenerList.Remove((DivisionUC)divisionsHolderPanel.Children[index]);
            divisionsList.removeDivision(index);
            divisionsHolderPanel.Children.RemoveAt(index);

            if (divisionsList.getSize() < MAX_DIVISIONS)
            {
                addDivisionButton.IsEnabled = true;
                addDivisionButton.Opacity   = 1.0;
            }

            isSectionEmpty();
            divisionCounterLabel.Content = divisionsHolderPanel.Children.Count;
        }
        /// <summary>
        /// Loads in an existing division into the divisions section. If the max of 30 is met, nothing is added and the add buttom is disabled
        /// </summary>
        /// <param name="div">The existing division</param>
        public void loadInDivision(DivisionModel div)
        {
            if (MainWindowModel.Instance.DivisionsModel.getSize() <= MAX_DIVISIONS)
            {
                int divNumber = divisionsHolderPanel.Children.Count + 1;
                DivisionUC division = new DivisionUC(prizes, divNumber);
                division.DivModel = div;
                division.setDataContextToModel();
                division.DivModel.DivisionNumber = divNumber;
                division.DivModel.levelBoxes = div.levelBoxes;
                division.Margin = new Thickness(marginAmount, marginAmount, 0, 0);
                division.SectionContainer = this;

                division.setupLoadedDivision();
                division.updateDivision();

                divisionsHolderPanel.Children.Add(division);
                this.AddListener(division);
                validateDivision();
            }

            if (MainWindowModel.Instance.DivisionsModel.getSize() >= MAX_DIVISIONS)
            {
                addDivisionButton.IsEnabled = false;
                addDivisionButton.Opacity = 0.3;
            }

            divisionCounterLabel.Content = divisionsHolderPanel.Children.Count;
            isSectionEmpty();
        }