private async void buttonUploadSlate_Click(object sender, EventArgs e)
        {
            if (Directory.Exists(Properties.Settings.Default.DefaultSlateCurrentFolder))
            {
                openFileDialogSlate.InitialDirectory = Properties.Settings.Default.DefaultSlateCurrentFolder;
            }

            if (openFileDialogSlate.ShowDialog() == DialogResult.OK)
            {
                Properties.Settings.Default.DefaultSlateCurrentFolder = Path.GetDirectoryName(openFileDialogSlate.FileName); // let's save the folder
                Program.SaveAndProtectUserConfig();

                string file        = openFileDialogSlate.FileName;
                string errorString = ListViewSlateJPG.CheckSlateFile(file);
                if (!string.IsNullOrEmpty(errorString))
                {
                    MessageBox.Show(errorString, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else // file has been validated
                {
                    IAsset asset;
                    progressBarUpload.Value   = 0;
                    progressBarUpload.Visible = true;

                    buttonUploadSlate.Enabled = false;

                    asset = await Task.Factory.StartNew(() => ProcessUploadFile(file));

                    progressBarUpload.Visible = false;

                    buttonUploadSlate.Enabled = true;
                    listViewJPG1.LoadJPGs(MyContext, asset, MyChannel.Slate);
                }
            }
        }