Пример #1
0
        async Task OpenDocument(ISiteItem siteItem, string documentName, Func <Task <IMarkpadDocument> > openDocument)
        {
            try
            {
                var openedDocs = MDI.Items.Cast <DocumentViewModel>();
                var openedDoc  = openedDocs.SingleOrDefault(d => d.MarkpadDocument.IsSameItem(siteItem));

                if (openedDoc != null)
                {
                    MDI.ActivateItem(openedDoc);
                }
                else
                {
                    using (DoingWork(string.Format("Opening {0}", documentName)))
                    {
                        var document = await openDocument();

                        var doc = documentViewModelFactory();
                        doc.Open(document);
                        MDI.Open(doc);
                    }
                }
            }
            catch (Exception ex)
            {
                DoDefaultErrorHandling(ex, string.Format("Open {0}", documentName));
            }
        }
Пример #2
0
 private void OpenHelpDocument(string title, string content)
 {
     if (!IsDocumentAlreadyOpen(title))
     {
         var documentViewModel = documentViewModelFactory();
         documentViewModel.Open(documentFactory.CreateHelpDocument(title, GetHelpText(content)));
         MDI.Open(documentViewModel);
     }
 }
Пример #3
0
        public void ShowHelp()
        {
            var documentViewModel = documentViewModelFactory();

            documentViewModel.Open(documentFactory.CreateHelpDocument("Markdown Help", GetHelpText("MarkdownHelp")));
            MDI.Open(documentViewModel);

            documentViewModel = documentViewModelFactory();
            documentViewModel.Open(documentFactory.CreateHelpDocument("MarkPad Help", GetHelpText("MarkPadHelp")));
            MDI.Open(documentViewModel);
        }
Пример #4
0
        void OpenDocumentResult(Task <IMarkpadDocument> t)
        {
            if (t.IsCanceled || t.Result == null)
            {
                return;
            }
            var doc = documentViewModelFactory();

            doc.Open(t.Result);
            MDI.Open(doc);
        }
Пример #5
0
        public void NewDocument(string text = "")
        {
            // C.M passes in "text"...?
            if (text == "text")
            {
                text = "";
            }

            var documentViewModel = documentViewModelFactory();

            documentViewModel.Open(documentFactory.NewDocument(text), isNew: true);
            MDI.Open(documentViewModel);
            documentViewModel.Update();
        }
Пример #6
0
        public void NewDocument(string text = "")
        {
            // C.M passes in "text"...?
            if (text == "text")
            {
                text = "";
            }

            var creator = documentCreator();

            creator.Document.BeginUpdate();
            creator.Document.Text = text;
            creator.Document.EndUpdate();

            MDI.Open(creator);
            creator.Update();
        }
Пример #7
0
        public void ShowHelp()
        {
            var creator = documentCreator();

            creator.Original      = GetHelpText("MarkdownHelp"); // set the Original so it isn't marked as requiring a save unless we change it
            creator.Document.Text = creator.Original;
            creator.Title         = "Markdown Help";
            MDI.Open(creator);
            creator.Update(); // ensure that the markdown is rendered

            creator               = documentCreator();
            creator.Original      = GetHelpText("MarkPadHelp"); // set the Original so it isn't marked as requiring a save unless we change it
            creator.Document.Text = creator.Original;
            creator.Title         = "MarkPad Help";
            MDI.Open(creator);
            creator.Update(); // ensure that the markdown is rendered
        }
Пример #8
0
        public void Handle(FileOpenEvent message)
        {
            DocumentViewModel openedDoc = GetOpenedDocument(message.Path);

            if (openedDoc != null)
            {
                MDI.ActivateItem(openedDoc);
            }
            else
            {
                if (File.Exists(message.Path))
                {
                    var doc = documentCreator();
                    doc.Open(message.Path);
                    MDI.Open(doc);
                }
            }
        }
Пример #9
0
        public void OpenFromWeb()
        {
            var settings = settingsService.GetSettings <MarkPadSettings>();
            var blogs    = settings.GetBlogs();

            if (blogs == null || blogs.Count == 0)
            {
                if (!ConfigureNewBlog("Open from web"))
                {
                    return;
                }
                blogs = settings.GetBlogs();
                if (blogs == null || blogs.Count == 0)
                {
                    return;
                }
            }

            var openFromWeb = openFromWebCreator();

            openFromWeb.InitializeBlogs(blogs);

            var result = windowManager.ShowDialog(openFromWeb);

            if (result != true)
            {
                return;
            }

            var post = openFromWeb.SelectedPost;

            var doc = documentCreator();

            doc.OpenFromWeb(post);
            MDI.Open(doc);
        }