示例#1
0
        private void LoadButton_Click(object sender, RoutedEventArgs e)
        {
            MessageBoxResult messageBoxResult = System.Windows.MessageBox.Show("Czy na pewno chcesz kontynuować? Utracisz obecny canvas.", "Wczytaj", System.Windows.MessageBoxButton.YesNo);

            if (messageBoxResult == MessageBoxResult.Yes)
            {
                RestoreCanvasWindow restoreCanvasWindow = new RestoreCanvasWindow();

                for (int i = 0; ; i++)
                {
                    CanvasMemento memento = this.caretaker.GetMemento(i);

                    if (memento != null)
                    {
                        string canvasName = this.originator.RestoreFromMemento(memento);
                        restoreCanvasWindow.canvasNameListbox.Items.Add(canvasName);
                    }
                    else
                    {
                        break;
                    }
                }

                if (true == restoreCanvasWindow.ShowDialog())
                {
                    this.RestoreCanvas(restoreCanvasWindow.canvasNameListbox.SelectedIndex);
                }
            }
        }
示例#2
0
 private void Window_Closing(object sender, CancelEventArgs e)
 {
     using (StreamWriter sw = new StreamWriter(this.canvasListFilePath, false))
     {
         for (int i = 0; ; i++)
         {
             CanvasMemento memento = this.caretaker.GetMemento(i);
             if (memento != null)
             {
                 String canvasName = this.originator.RestoreFromMemento(memento);
                 sw.WriteLine(canvasName);
             }
             else
             {
                 break;
             }
         }
     }
 }