예제 #1
0
        public void Execute(OpenPopupSignal openPopupSignalParams)
        {
            PopupData popupData = new PopupData()
            {
                PopupConfig     = (PopupConfig)openPopupSignalParams.PopupConfig,
                OnPopupComplete = openPopupSignalParams.OnPopupComplete
            };

            _popupSystemDataModel.Popups.Add(popupData);
        }
예제 #2
0
        private void OnPopupButtonClicked(PopupData popupData, PopupButtonData popupButtonData)
        {
            if (popupData.PopupConfig.ButtonData.Contains(popupButtonData))
            {
                IPopupResult popupResult = popupData.PopupConfig.GetPopupResult();

                popupResult.SelectedIndex = popupData.PopupConfig.ButtonData.IndexOf(popupButtonData);

                popupData.OnPopupComplete.Resolve(popupResult);

                _popupSystemDataModel.Popups.Remove(popupData);
            }
            else
            {
                throw new Exception("PopupMediator.OnPopupButtonClicked: Something went wrong.");
            }
        }