private Button[] GetButtons(LaunchConfigGroup group, ref int x, ref int y)
        {
            var buttons = new List <Button>();

            foreach (var launch in group.LaunchConfigs)
            {
                var b = new Button();
                b.Location  = new System.Drawing.Point(x, y);
                b.Name      = $"button_{group.Name.Replace(" ", "")}_{launch.Name.Replace(" ", "")}";
                b.Text      = launch.Name;
                b.Size      = new System.Drawing.Size(buttonWidth, buttonHeight);
                b.Padding   = new Padding(1);
                b.BackColor = Color.FromArgb(210, 41, 61, 71);
                b.TextAlign = ContentAlignment.BottomCenter;

                b.BackgroundImage       = GetLaunchBgImage(launch.ProgramType);
                b.BackgroundImageLayout = ImageLayout.Stretch;

                _buttonNameLaunchConfigMappings.TryAdd(b.Name, launch);

                b.Click += GetEventHandler(launch.ProgramType);

                buttons.Add(b);
                y += buttonHeight + 5;
            }

            return(buttons.ToArray());
        }
        private void InitializeLaunchPanel(LaunchConfigGroup group)
        {
            this.Controls.RemoveByKey(launchPanelName);

            launchPanel          = new Panel();
            launchPanel.Name     = launchPanelName;
            launchPanel.Location = new Point(panelX, panelY);

            int x = 0, y = 0;



            y += 30;

            launchPanel.Controls.AddRange(GetButtons(group, ref x, ref y));
            launchPanel.Height = 500;
        }
 private void UpdateLaunchPanel(LaunchConfigGroup group)
 {
 }