コード例 #1
0
        private void Update(PasswordState passwordState, bool justSet)
        {
            _passwordState = passwordState;

            if (passwordState.HasPassword && !justSet)
            {
                State        = SettingsPasswordState.Confirm;
                PasswordHint = passwordState.PasswordHint;
            }
            else if (justSet)
            {
                State = SettingsPasswordState.Manage;
            }
            else
            {
                State = SettingsPasswordState.Create;
            }
        }
コード例 #2
0
        private AppState Reducer(AppState state, object action)
        {
            BaseState tmpBaseState = (action) as BaseState;

            switch (tmpBaseState.userOpCode)
            {
            case UserOpCodeEnum.None: break;

            case UserOpCodeEnum.Close:
                HelperWidgets.PopRoute(tmpBaseState.Context);
                break;

            case UserOpCodeEnum.GoToLoginPage:
                HelperWidgets.PushNewRoute(tmpBaseState.Context, new LoginPage.LoginPage());
                break;

            case UserOpCodeEnum.GoToRegisterPage:
                HelperWidgets.PushNewRoute(tmpBaseState.Context, new RegisterPage());
                break;

            case UserOpCodeEnum.SendVerfyCode:
                CountdownState tmpCountdownState = ((CountdownState)action);
                state.CountdownTime = tmpCountdownState.CountdownTime;
                break;

            case UserOpCodeEnum.TypingAccount:
                AccountState tmpAccountState = ((AccountState)action);
                state.Account = tmpAccountState.InputResult;
                break;

            case UserOpCodeEnum.TypingPassword:
                PasswordState tmpPasswordState = ((PasswordState)action);
                state.Password = tmpPasswordState.InputResult;
                break;

            case UserOpCodeEnum.TypingNickName:
                SetNickNameState tmpSetNickNameState = ((SetNickNameState)action);
                state.NickName = tmpSetNickNameState.InputResult;
                break;

            case UserOpCodeEnum.TypingVerfyCode:
                SetVerfyCodeState tmpSetVerfyCodeState = ((SetVerfyCodeState)action);
                state.VerfyCode = tmpSetVerfyCodeState.InputResult;
                break;

            case UserOpCodeEnum.SetupAvatar:
                SetRegisterAvatarState tmpSetRegisterAvatarState = ((SetRegisterAvatarState)action);
                state.RegisterAvatar = tmpSetRegisterAvatarState.InputResult;
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }


            switch (tmpBaseState.RequestResult)
            {
            case RequestResultEnum.None:
                break;

            case RequestResultEnum.LoginSuccessed:
                HelperWidgets.PopRoute(tmpBaseState.Context);
                HelperWidgets.PopRoute(tmpBaseState.Context);
                HelperWidgets.PushNewRoute(tmpBaseState.Context, new MainPage());
                break;

            case RequestResultEnum.LoginFailed:
                state.FialedMsg = ((LoginState)action).FailedMsg;
                break;

            case RequestResultEnum.VerfyCodeSuccessed:
                break;

            case RequestResultEnum.VerfyCodeFailed:
                break;

            case RequestResultEnum.RegisterSuccessed:
                break;

            case RequestResultEnum.RegisterFailed:
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }

            return(state);
        }