private void addButton_Click(object sender, EventArgs e)
        {
            SkillLine newLine = new SkillLine(this);

            newLine.skillID = skillLines.Count;
            mainPanel.Controls.Add(newLine);
            skillLines.Add(newLine);
            RepositionLines();
        }
        public void DeleteLine(int skillLineID)
        {
            selectedControl = skillLineID;
            if (skillLineID < skillLines.Count)
            {
                SkillLine candidate = skillLines.ElementAt(skillLineID);

                if (skillLineID != 0 || (skillLineID == 0 && skillLines.Count > 1))
                {
                    mainPanel.Controls.Remove(candidate);
                    skillLines.Remove(candidate);

                    for (int i = skillLineID; i < skillLines.Count; i++)
                    {
                        skillLines.ElementAt(i).skillID--;
                    }
                }
            }
            RepositionLines();
        }
        public void PopulateSkillLines(List <Skill> skillInputList)
        {
            int count = 0;

            if (skillInputList.Count <= 0)
            {
                //skillInputList = ParentWindow.parent.session.settings.defaultSkillLoadout;
            }
            foreach (Skill s in skillInputList)
            {
                SkillLine newLine = new SkillLine(this);
                newLine.SetAbilityMods(abilityMods);
                newLine.Location   = new Point(INITIAL_X, INITIAL_Y + SPACING_INTERVAL * count);
                addButton.Location = new Point(24, INITIAL_Y + SPACING_INTERVAL * (count + 1));
                newLine.skillID    = count;
                newLine.InitiateSkill(s, abilityMods);
                mainPanel.Controls.Add(newLine);
                skillLines.Add(newLine);
                count++;
            }
        }