示例#1
0
        public void TestSerialization()
        {
            string song     = @"string 1
string 2
       
string 3
string 4";
            var    file1    = new BinaryFileLyrics(new Lyrics(song, switcher));
            var    filePath = file1.Save();
            var    file2    = new BinaryFileLyrics(filePath);

            Assert.AreEqual(file1.Lyrics, file2.Lyrics);
        }
示例#2
0
        static void Main(string[] args)
        {
            try
            {
                Console.OutputEncoding = Encoding.UTF8;
                ILyrics lyrics       = null;
                bool    sendSelected = false;

                if (args.Length == 0)
                {
                    lyrics = new TextFileLyrics(); // generate Lyrics from text files
                    lyrics.Save();
                }
                else if (args.Length >= 1)
                {
                    string path = args[0];
                    Console.WriteLine(path);
                    lyrics = new BinaryFileLyrics(path); // get Lyrics by deserializing
                }

                if (args.Length == 2 && args[1].Trim() == "sendSelected")
                {
                    sendSelected = true;
                }

                if (sendSelected)
                {
                    lyrics.SendSelected();
                }
                else
                {
                    lyrics.Send();
                }
            }
            catch (Exception ex)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("!!!!!!!!!!!!!!!!!");
                Console.WriteLine(ex.Message);
                Console.WriteLine("!!!!!!!!!!!!!!!!!");
                ExceptionHelper.HandleException(ex);
            }
            finally
            {
                Console.ResetColor();
                Console.WriteLine("Finished");
                //Console.ReadLine();
                new Reader().ReadLine(3000);
            }
        }
示例#3
0
        private string SaveLyrics()
        {
            string binaryFile = "";

            try
            {
                Lyrics.Selection.OnVerseSelected -= new EventHandler(this.OnVerseSelected);                 // to avoid {"Type 'System.Windows.Forms.Form' in Assembly 'System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' is not marked as serializable
                var tempSwitcher = Lyrics.Switcher;
                Lyrics.Switcher = null;
                binaryFile      = new BinaryFileLyrics(Lyrics).Save();
                Lyrics.Selection.OnVerseSelected += new EventHandler(this.OnVerseSelected);
                Lyrics.Switcher = tempSwitcher;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "ATEM Error");
            }
            return(binaryFile);
        }