コード例 #1
0
        /// <summary>
        /// Creates a Preview item using the given notepad view model
        /// </summary>
        /// <param name="notepad"></param>
        /// <returns></returns>
        public WindowPreviewControlViewModel CreatePreviewControlFromDataContext(NotepadViewModel notepad)
        {
            WindowPreviewControlViewModel winPrev = new WindowPreviewControlViewModel(notepad);

            SetupPreviewControlCallbacks(winPrev);
            return(winPrev);
        }
コード例 #2
0
        /// <summary>
        /// (ONLY USE WHEN STARTING APPLICATION) Creates and shows a Notepad window which loads the theme/
        /// perferences, and opens the files' paths given in the parameters. Also opens the previously unclosed files
        /// </summary>
        /// <param name="args"></param>
        public void CreateAndShowApplicationStartupNotepadWindowAndPreviewAndOpenUnclosedFiles(string[] args)
        {
            NotepadWindow window = CreateNotepadWindowAndOpenFiles(args, true, true, useStartupDelay: true);
            WindowPreviewControlViewModel wpc = CreatePreviewControlFromDataContext(window.Notepad);

            AddPreviewItem(wpc);
            AddWindow(window);
            ShowWindow(window);

            if (PreferencesG.SAVE_OPEN_UNCLOSED_FILES)
            {
                try
                {
                    List <string> filesToOpen = ThisApplication.GetPreviouslyUnclosedFiles();
                    foreach (string file in filesToOpen)
                    {
                        window.Notepad.OpenNotepadFromPath(file);
                    }
                }
                catch { }
                finally
                {
                    ThisApplication.DeletePreviouslyUnclosedFiles();
                }
            }
        }
コード例 #3
0
        /// <summary>
        /// Adds and shows a given Notepad window
        /// </summary>
        /// <param name="window"></param>
        public void AddNewNotepadAndPreviewWindowFromWindow(NotepadWindow window)
        {
            WindowPreviewControlViewModel wpc = CreatePreviewControlFromDataContext(window.Notepad);

            AddPreviewItem(wpc);
            SetupNotepadWindowCallbacksAndProperties(window);
            AddWindow(window);
            ShowWindow(window);
        }
コード例 #4
0
        /// <summary>
        /// Creates and shows a Notepad window with no items. Loads
        /// them theme and preferences.
        /// </summary>
        public void CreateAndShowNotepadWindowAndPreviewWithDefaultItem()
        {
            NotepadWindow window = CreateNotepadWindowWithItem();
            WindowPreviewControlViewModel wpc = CreatePreviewControlFromDataContext(window.Notepad);

            AddPreviewItem(wpc);
            AddWindow(window);
            ShowWindow(window);
        }
コード例 #5
0
        /// <summary>
        /// (ONLY USE WHEN STARTING APPLICATION) Creates and shows a Notepad window which loads the theme/
        /// perferences, and opens the files' paths given in the parameters
        /// </summary>
        /// <param name="args"></param>
        public void CreateAndShowApplicationStartupNotepadWindowAndPreview(string[] args)
        {
            NotepadWindow window = CreateNotepadWindowAndOpenFiles(args, true, true);
            WindowPreviewControlViewModel wpc = CreatePreviewControlFromDataContext(window.Notepad);

            AddPreviewItem(wpc);
            AddWindow(window);
            ShowWindow(window);
        }
コード例 #6
0
        /// <summary>
        /// (ONLY USE WHEN STARTING APPLICATION) Creates and shows a startup Notepad window.
        /// </summary>
        public void CreateAndShowStartupNotepadWindowAndPreview()
        {
            NotepadWindow window = CreateApplicationStartupNotepadWindow();
            WindowPreviewControlViewModel wpc = CreatePreviewControlFromDataContext(window.Notepad);

            AddPreviewItem(wpc);
            AddWindow(window);
            ShowWindow(window);
        }
コード例 #7
0
        public void RemoveWindowAndPreviewFromWindow(NotepadWindow window)
        {
            RemoveWindow(window);
            WindowPreviewControlViewModel wpc = GetPreviewControlFromNotepad(window.Notepad);

            if (wpc != null)
            {
                RemovePreviewItem(wpc);
            }
        }
コード例 #8
0
        public void CloseWindowAndRemovePreviewFromPreview(WindowPreviewControlViewModel wpcvm)
        {
            RemovePreviewItem(wpcvm);
            NotepadWindow nw = WindowManager.GetNotepadWindowFromNotepad(wpcvm.Notepad);

            if (nw != null)
            {
                CloseWindow(nw);
            }
        }
コード例 #9
0
 public void FullyCloseWindowFromDataContext(NotepadViewModel notepad)
 {
     if (notepad != null)
     {
         WindowPreviewControlViewModel wpc = GetPreviewControlFromNotepad(notepad);
         if (wpc != null)
         {
             CloseWindowAndRemovePreviewFromPreview(wpc);
         }
     }
 }
コード例 #10
0
 public void SetupPreviewControlCallbacks(WindowPreviewControlViewModel winPrev)
 {
     winPrev.FocusNotepadCallback = FocusWindowFromDataContext;
     winPrev.CloseNotepadCallback = CloseWindowFromPreviewControl;
 }
コード例 #11
0
 public void RemovePreviewItem(WindowPreviewControlViewModel prevWin)
 {
     WindowPreviews.Remove(prevWin);
 }
コード例 #12
0
 public void AddPreviewItem(WindowPreviewControlViewModel prevWin)
 {
     WindowPreviews.Add(prevWin);
 }
コード例 #13
0
 public void CloseWindowFromPreviewControl(WindowPreviewControlViewModel wpcvm)
 {
     CloseWindowAndRemovePreviewFromPreview(wpcvm);
 }