Beispiel #1
0
        public override void Close(bool doCloseSound = true)
        {
            if (_preset.EditMode)
            {
                void OnAccept()
                {
                    CommitTemplate();
                    base.Close(doCloseSound);
                }

                void OnCancel()
                {
                    _preset.Revert();
                    base.Close(doCloseSound);
                }

                Dialog_Alert.Open(Lang.Get("Button.PresetSaveConfirm"), Dialog_Alert.Buttons.YesNo, OnAccept, OnCancel);
                return;
            }

            if (_preset.Selected == _personalized)
            {
                Registry.ReplaceRules(_pawn, _personalized);
            }
            base.Close(doCloseSound);
        }
Beispiel #2
0
        public override void Close(bool doCloseSound = true)
        {
            if (_presetList.EditMode && (_presetList.IsUnsaved || HasMadeChanges()))
            {
                void OnAccept()
                {
                    _presetList.Selected.Update(_template);
                    RefreshTemplate();
                    _presetList.Commit();
                    base.Close(doCloseSound);
                }

                void OnCancel()
                {
                    if (_presetList.IsUnsaved)
                    {
                        _presetList.Revert();
                    }

                    base.Close(doCloseSound);
                }

                Dialog_Alert.Open(Lang.Get("Button.PresetSaveConfirm"), Dialog_Alert.Buttons.YesNo, OnAccept, OnCancel);
                return;
            }

            base.Close(doCloseSound);
        }