/// <summary>
        /// await-able Task to save changes to the previously selected item/new item
        /// </summary>
        /// <returns></returns>
        private Task Save()
        {
            return(Task.Run(() =>
            {
                //Customization.conclusions
                CustomConclusion newConclusion = new CustomConclusion(subject.Items[subject.SelectedIndex], emotion.Items[emotion.SelectedIndex], conjunction.Text.Trim(), conclusion.Text.Trim());
                Customization.ReplaceCustomConclusion(originalConclusion, newConclusion);
                Customization.Save();

                //Customization.Reload();
            }));
        }
Beispiel #2
0
        /// <summary>
        /// Load the default list of Conclusions from the included Options.csv
        /// </summary>
        public static void Init()
        {
            if (File.Exists(Customization.customFilename))
            {
                Customization.Reload();

                foreach (CustomConclusion c in Customization.conclusions)
                {
                    AddPhrase(Time.Preset, c.GetSubject(), c.GetEmotion());
                }
            }
            else
            {
                //TODO: this needs to be changed to work with iOS
                string res = "Oigo.Droid.Options.csv";

                Stream s = IntrospectionExtensions.GetTypeInfo(typeof(GlobalData)).Assembly.GetManifestResourceStream(res);
                using (StreamReader reader = new StreamReader(s))
                {
                    string   line;
                    string   subject    = "";
                    string   emotion    = "";
                    string[] connection = new string[3];
                    string[] conclusion = new string[3];
                    string[] temp;

                    while ((line = reader.ReadLine()) != null)
                    {
                        if (line.StartsWith(".") || line.Replace(',', ' ').Trim().Length == 0)
                        {
                            continue;
                        }

                        temp = line.Trim().Split(',');
                        if (temp[0].Trim().Length > 0)
                        {
                            subject = temp[0].Trim();
                        }
                        if (temp[1].Trim().Length > 0)
                        {
                            emotion = temp[1].Trim();
                        }
                        if (temp[2].Trim().Length > 0)
                        {
                            connection[0] = temp[2].Trim();
                            connection[1] = temp[5].Trim();
                            connection[2] = temp[8].Trim();
                        }
                        if (temp[3].Trim().Length > 0)
                        {
                            conclusion[0] = temp[3].Trim();
                            conclusion[1] = temp[6].Trim();
                            conclusion[2] = temp[9].Trim();
                            for (int i = 0; i < 3; i++)
                            {
                                AddPhrase((Time)i, subject, emotion, connection[i], conclusion[i]);
                            }
                        }
                    }
                }
                Customization.Save();
            }

            if (File.Exists(HelpCustomization.customFilename))
            {
                HelpCustomization.Reload();
            }
            else
            {
                //TODO: this needs to be changed to work with iOS
                string res = "Oigo.Droid.Helpme.csv";

                Stream s = IntrospectionExtensions.GetTypeInfo(typeof(GlobalData)).Assembly.GetManifestResourceStream(res);
                using (StreamReader reader = new StreamReader(s))
                {
                    string   line;
                    string   subject    = "";
                    string   emotion    = "";
                    string   connection = "";
                    string   solution   = "";
                    string[] temp;

                    while ((line = reader.ReadLine()) != null)
                    {
                        if (line.StartsWith(".") || line.Replace(',', ' ').Trim().Length == 0)
                        {
                            continue;
                        }

                        temp = line.Trim().Split(',');
                        if (temp[0].Trim().Length > 0)
                        {
                            subject = temp[0].Trim();
                        }
                        if (temp[1].Trim().Length > 0)
                        {
                            emotion = temp[1].Trim();
                        }
                        if (temp[2].Trim().Length > 0)
                        {
                            connection = temp[2].Trim();
                        }
                        if (temp[3].Trim().Length > 0)
                        {
                            solution = temp[3].Trim();
                            HelpCustomization.solutions.Add(new Solution(emotion, connection, solution));
                        }
                    }
                }
                HelpCustomization.Save();
            }

            if (File.Exists(Tutorial.customFilename))
            {
                ;
            }
            else
            {
                string res = "Oigo.Droid.tutStart.txt";

                Stream s = IntrospectionExtensions.GetTypeInfo(typeof(GlobalData)).Assembly.GetManifestResourceStream(res);
                using (StreamReader sr = new StreamReader(s))
                {
                    string line;
                    line = sr.ReadLine();
                    File.WriteAllText(Tutorial.customFilename, line);
                }
            }
        }