Octgn.Play.PlayWindow.LimitedSaveClicked C# (CSharp) Method

LimitedSaveClicked() protected method

protected LimitedSaveClicked ( object sender, EventArgs e ) : void
sender object
e System.EventArgs
return void
        protected void LimitedSaveClicked(object sender, EventArgs e)
        {
            if (this.PreGameLobby.Visibility == Visibility.Visible) return;
            var sfd = new SaveFileDialog
                          {
                              AddExtension = true,
                              Filter = "Octgn decks|*.o8d",
                              InitialDirectory = Program.GameEngine.Definition.GetDefaultDeckPath()
                          };
            if (!sfd.ShowDialog().GetValueOrDefault()) return;

            var dlg = backstage.Child as PickCardsDialog;
            try
            {
                if (dlg != null) 
                    dlg.LimitedDeck.Save(GameManager.Get().GetById(Program.GameEngine.Definition.Id), sfd.FileName);
                else if(Program.GameEngine.LastLoadedDeck != null)
                    Program.GameEngine.LastLoadedDeck.Save(GameManager.Get().GetById(Program.GameEngine.Definition.Id), sfd.FileName);

            }
            catch (UserMessageException ex)
            {
                TopMostMessageBox.Show(ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }