Example #1
0
        private void AssignTrackMenuItem_Click(object sender, EventArgs e)
        {
            int index = -1;
            int menuItemIndex;

            for (int i = 0; i < soundBoardContextMenus.Count; i++)
            {
                menuItemIndex = 0;
                if (soundBoardContextMenus[i].MenuItems.Count == 4)
                {
                    menuItemIndex = 2;
                }
                if (sender.Equals(soundBoardContextMenus[i].MenuItems[menuItemIndex]))
                {
                    index = i;
                    break;
                }
            }
            if (index != -1)
            {
                OpenFileDialog openMidiFileDialog = new OpenFileDialog();
                openMidiFileDialog.DefaultExt = "mid";
                openMidiFileDialog.Filter     = "MIDI files|*.mid|All files|*.*";
                openMidiFileDialog.Title      = "Open MIDI file";
                if (openMidiFileDialog.ShowDialog() == DialogResult.OK)
                {
                    SoundBoardItem soundBoardItem;
                    if (soundBoardManager.IsTrackAssigned(index))
                    {
                        soundBoardItem = soundBoardManager.GetTrack(index);
                    }
                    else
                    {
                        soundBoardItem = new SoundBoardItem();
                    }
                    string fileName         = openMidiFileDialog.FileName;
                    string filteredFileName = fileName;
                    if (fileName.Contains("\\"))
                    {
                        string[] fileNameSplit = fileName.Split('\\');
                        filteredFileName = fileNameSplit[fileNameSplit.Length - 1].Replace(".mid", "");
                    }
                    soundBoardItem.Path = fileName;
                    soundBoardItem.Name = filteredFileName;
                    soundBoardManager.SetTrack(soundBoardItem, index);
                }
            }
            RefreshButtons();
        }