public void InsertNote(SingleNote note)
        {
            string noteText = string.Format("{{S:{0}:{1}}}", NoteCategoryParse(note), note.Timing);

            SongText += noteText;
            SongText += Environment.NewLine;
        }
        private string NoteCategoryParse(SingleNote note)
        {
            switch (note.NoteType)
            {
            case NoteCategory.purple:
                return("P");

            case NoteCategory.orange:
                return("O");

            case NoteCategory.cyan:
                return("C");

            case NoteCategory.green:
                return("G");

            case NoteCategory.yellow:
                return("Y");

            case NoteCategory.red:
                return("R");

            case NoteCategory.pink:
                return("PN");

            default:
                return("P");
            }
        }
        private SingleNote readNextNote(string rawNote)
        {
            var note = new SingleNote(0, NoteCategory.purple);

            try
            {
                rawNote = rawNote.Replace('{', ' ').Replace('}', ' ');
                var noteSections = rawNote.Split(':');
                if (noteSections.Length > 2)
                {
                    var   noteType     = noteSections[0];
                    var   noteCategory = noteSections[1];
                    float noteTiming   = float.Parse(noteSections[2], CultureInfo.InvariantCulture.NumberFormat);

                    note.NoteType = RawToCategory(noteCategory);
                    note.Timing   = noteTiming;
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            return(note);
        }