Example #1
0
        private void ShowHideHelpFrame(object state)
        {
            if (_isHelpShowing)
            {
                return;
            }

            _isHelpShowing = true;

            if (!IsHelpShowed)
            {
                if (CurrentQuestion.Helps == null)
                {
                    return;
                }
                var helps = CurrentQuestion.Helps.Split(';');
                var rand  = new Random();
                var index = rand.Next(0, helps.Length);

                HelperInfoChanged?.Invoke(this, (HelperType)index);

                HelpText = helps[index];
            }

            IsHelpShowed = !IsHelpShowed;

            HelpFrameVisibleChanged?.Invoke(this, IsHelpShowed);
        }
Example #2
0
        private void GetNextQuestion(object state)
        {
            if (_isAnswering)
            {
                return;
            }

            _isAnswering = true;

            if (IsHelpShowed)
            {
                _isHelpShowing = true;
                IsHelpShowed   = !IsHelpShowed;
                HelpFrameVisibleChanged?.Invoke(this, IsHelpShowed);
            }

            AnswerPushed?.Invoke(this, Enumerable.SequenceEqual(CurrentQuestion.CorrectIndexes, SelectedAnswerIndexes));
        }