public void Restore(IMemento memento) { if (!(memento is IteratorMemento)) { return; } else { Score = memento.GetScore(); Index = memento.GetIndex(); Level = memento.GetLevel(); if (memento.IsTextBox()) //przywracanie pytania jesli mialo ono input-textbox { if (!BuilderText) //obecne pytanie ma input-radio, trzeba zamienic na textbox { BuilderText = true; Builder = new TextBoxBuilder(); BuildGrid(); } TextBox.Text = memento.GetTextBox(); } else //przywracanie pytania jesli mialo ono input-radio { if (BuilderText) //obecne pytanie ma input-textbox, trzeba zamienic na radio { BuilderText = false; Builder = new RadioBuilder(); } BuildGrid(); for (int i = 0; i < StackPanel.Children.Count; i++) { RadioAnswers[i].Content = memento.GetAnswers()[i]; } } Label.Content = memento.GetLabel(); } }