/// <summary>
        /// Opens an existing workshop
        /// </summary>
        private void OpenExistingWorkshop()
        {
            // Show an OpenFileDialog
            OpenFileDialog dialog = new OpenFileDialog
            {
                Filter      = "Sup Files | *.sup",
                Multiselect = false
            };

            // Open file and pass the path to the workshop mdi child form
            if (dialog.ShowDialog() == DialogResult.OK)
            {
                string       path = dialog.FileName;
                string       name = dialog.SafeFileName.Split('.')[0];
                WorkshopForm form = new WorkshopForm(path, name);
                form.MdiParent = this;
                form.Show();
            }
        }
        /// <summary>
        /// Opens a new workshop
        /// </summary>
        private void OpenNewWorkshop()
        {
            // to get workshop name
            WorkshopNameForm form = new WorkshopNameForm();

            form.ShowDialog();

            // validate workshop name
            if (form.WorkshopName.Length > 0)
            {
                // get path and append extension
                string path = $"{Directory.GetParent(Application.ExecutablePath)}/{form.WorkshopName}.sup";

                // open workshop mdi child form
                WorkshopForm workshopForm = new WorkshopForm(path, form.WorkshopName);
                workshopForm.MdiParent = this;
                workshopForm.Show();
            }
        }