Example #1
0
 /// <summary>
 /// Navigates to the kanji page, and performs an intra-navigation
 /// to the kanji referred by the given character.
 /// </summary>
 /// <param name="character">Character driving the navigation.</param>
 public void NavigateToKanji(KanjiWritingCharacter character)
 {
     lock (_mainWindowLock)
     {
         RequireMainWindow();
         CurrentPage = NavigationPageEnum.Kanji;
         KanjiVm.Navigate(character);
     }
 }
Example #2
0
        /// <summary>
        /// Event handler triggered when the Main Window is closed.
        /// </summary>
        private void OnMainWindowClosed(object sender, EventArgs e)
        {
            lock (_mainWindowLock)
            {
                // Unsubscribe and release windows.
                MainWindow.Closed -= OnMainWindowClosed;
                MainWindow         = null;
                ActiveWindow       = null;

                // Dispose and release main pages View Models.
                KanjiVm.Dispose();
                KanjiVm = null;

                SrsVm.Dispose();
                SrsVm = null;
            }
        }