protected override IDocument NewCore()
        {
            var document = new RichTextDocument(this);

            document.FileName = string.Format(CultureInfo.CurrentCulture, Resources.DocumentFileName,
                                              ++documentCount, FileExtension);
            return(document);
        }
        protected override IDocument OpenCore(string fileName)
        {
            var flowDocument = new FlowDocument();
            var range        = new TextRange(flowDocument.ContentStart, flowDocument.ContentEnd);

            using (var stream = new FileStream(fileName, FileMode.Open))
            {
                range.Load(stream, DataFormats.Rtf);
            }

            var document = new RichTextDocument(this, flowDocument);

            documentCount++;
            return(document);
        }