Beispiel #1
0
        /// <summary>
        /// Load all existing signatures
        /// </summary>
        private void LoadSignatures()
        {
            string filename = Path.ChangeExtension(Path.Combine(CIX.HomeFolder, CIX.Username), "signatures.xml");

            StreamReader fileStream = null;

            try
            {
                fileStream = new StreamReader(filename);
                using (XmlReader reader = XmlReader.Create(fileStream))
                {
                    fileStream = null;

                    XmlSerializer serializer = new XmlSerializer(typeof(SignatureFile));
                    SignatureFile sigFile    = (SignatureFile)serializer.Deserialize(reader);

                    foreach (Signature item in sigFile.Items)
                    {
                        string rawText = item.text.Replace("\n", "\r\n");
                        _signatures[item.name] = rawText.Trim();
                    }
                }
            }
            catch (Exception e)
            {
                LogFile.WriteLine("Error parsing signature file {0} : {1}", filename, e.Message);
            }
            finally
            {
                if (fileStream != null)
                {
                    fileStream.Dispose();
                }
            }
        }
Beispiel #2
0
        /// <summary>
        /// Save all signatures
        /// </summary>
        private void SaveSignatures()
        {
            string       filename   = Path.ChangeExtension(Path.Combine(CIX.HomeFolder, CIX.Username), "signatures.xml");
            StreamWriter fileStream = null;

            try
            {
                fileStream = new StreamWriter(filename, false);
                XmlWriterSettings settings = new XmlWriterSettings
                {
                    Indent              = true,
                    OmitXmlDeclaration  = true,
                    CloseOutput         = true,
                    NewLineOnAttributes = true
                };

                using (XmlWriter writer = XmlWriter.Create(fileStream, settings))
                {
                    fileStream = null;

                    XmlSerializer serializer = new XmlSerializer(typeof(SignatureFile));

                    SignatureFile file = new SignatureFile
                    {
                        Items = _signatures.Keys.Select(title => new Signature {
                            name = title, text = _signatures[title]
                        }).ToArray()
                    };
                    serializer.Serialize(writer, file);
                }

                LogFile.WriteLine("Saved signatures to {0}", filename);
            }
            catch (Exception e)
            {
                LogFile.WriteLine("Cannot save signatures to {0} : {1}", filename, e.Message);
            }
            finally
            {
                if (fileStream != null)
                {
                    fileStream.Dispose();
                }
            }
        }
Beispiel #3
0
        /// <summary>
        /// Save all signatures
        /// </summary>
        private void SaveSignatures()
        {
            string filename = Path.ChangeExtension(Path.Combine(CIX.HomeFolder, CIX.Username), "signatures.xml");
            StreamWriter fileStream = null;

            try
            {
                fileStream = new StreamWriter(filename, false);
                XmlWriterSettings settings = new XmlWriterSettings
                {
                    Indent = true,
                    OmitXmlDeclaration = true,
                    CloseOutput = true,
                    NewLineOnAttributes = true
                };

                using (XmlWriter writer = XmlWriter.Create(fileStream, settings))
                {
                    fileStream = null;

                    XmlSerializer serializer = new XmlSerializer(typeof(SignatureFile));

                    SignatureFile file = new SignatureFile
                    {
                        Items = _signatures.Keys.Select(title => new Signature {name = title, text = _signatures[title]}).ToArray()
                    };
                    serializer.Serialize(writer, file);
                }

                LogFile.WriteLine("Saved signatures to {0}", filename);
            }
            catch (Exception e)
            {
                LogFile.WriteLine("Cannot save signatures to {0} : {1}", filename, e.Message);
            }
            finally
            {
                if (fileStream != null)
                {
                    fileStream.Dispose();
                }
            }
        }