static Dictionary <string, List <string> > WriteTextToHeadlines() { string[] headlines = DiaryFile.GetHeadlinesArray(); Dictionary <string, List <string> > headlineTextPairs = new Dictionary <string, List <string> >(); for (int i = 0; i < headlines.Length; i++) { string headline = headlines[i]; List <string> lines = new List <string>(); Console.WriteLine(headline); if (i == 1) { string line; while ((line = Console.ReadLine()) != "") { lines.Add(line); } } else { lines.Add(Console.ReadLine()); Console.WriteLine(); } headlineTextPairs.Add(headline, lines); } return(headlineTextPairs); }
static void DisplayEditor(string fileName, string headline) { Dictionary <string, List <string> > headlineTextPairs = DiaryFile.GetHeadlineTextPairs(fileName); List <string> lines = headlineTextPairs[headline]; DisplayEditor(headline, lines); SaveChanges(headlineTextPairs, fileName); }
static void SaveChanges(Dictionary <string, List <string> > headlineTextPairs, string fileName) { string yOrN = YesOrNo("Do you want to save the changes? "); if (yOrN == "y" || yOrN == "Y") { DiaryFile.RemoveFile(fileName); SaveToFile(headlineTextPairs, fileName); } }
static string FileMenu() { List <string> options = DiaryFile.GetFileNames(); if (!options.Contains("Go Back")) { options.Add("Go Back"); } return(GetOptionFromMenu(options)); }
static void DisplaySearchResult(string phrase) { List <string> files = DiaryFile.GetFilesContaining(phrase); string option = ""; while (option != "q" && option != "Go Back") { ClearConsole(); WriteMessage("Search results for: " + phrase + "\n"); option = FileMenu(files); if (option != "q" && option != "Go Back") { ViewFile(option); } } }
static void EditFile(string fileName) { List <string> options = DiaryFile.GetHeadlinesList(); options.Add("Done Editing!"); string option = ""; while (option != "Done Editing!") { ClearConsole(); WriteMessage("Edit Menu, File: " + fileName + "\n"); option = GetOptionFromMenu(options); if (option != "Done Editing!") { DisplayEditor(fileName, option); } } }
static void ViewFile(string fileName) { ClearConsole(); WriteMessage("Viewing file: " + fileName + " (Press a key to exit)\n"); Dictionary <string, List <string> > headlineTextPairs = DiaryFile.GetHeadlineTextPairs(fileName); string[] headlines = headlineTextPairs.Keys.ToArray(); List <string>[] text = headlineTextPairs.Values.ToArray(); for (int i = 0; i < headlines.Length; i++) { string headline = headlines[i]; List <string> paragraph = text[i]; WriteMessage(headline + "\n"); foreach (string line in paragraph) { WriteMessage(line + "\n"); } WriteMessage("\n"); } WaitForKeyPress(); }
static bool TodaysFileExcists() { return(DiaryFile.GetFileNames().Contains(TodaysFileName())); }
static void SaveToFile(Dictionary <string, List <string> > headlineTextPairs, string fileName) { DiaryFile.SaveToFile(headlineTextPairs, fileName); }