SIPSorcery.SimpleWizardInRuleControl.SetUICommandFieldsForRule C# (CSharp) Method

SetUICommandFieldsForRule() private method

Sets the content of the UI controls representing command parameter fields based on the specified rule. The command parameters mean different things and apply to different controls dependent on the rule's command type.
private SetUICommandFieldsForRule ( SimpleWizardRule rule ) : void
rule SIPSorcery.Entities.SimpleWizardRule
return void
        private void SetUICommandFieldsForRule(SimpleWizardRule rule)
        {
            if (rule.CommandType == SimpleWizardCommandTypes.Dial && m_ruleProvider.Items != null && m_ruleProvider.Items.Count > 0)
            {
                m_ruleCommandString.Text = rule.CommandParameter1;
                if (m_ruleProvider.Items.Any(x => x as string == rule.CommandParameter2))
                {
                    // The second command parameter holds the provider.
                    m_ruleProvider.SelectedIndex = m_ruleProvider.Items.IndexOf(m_ruleProvider.Items.Single(x => x as string == rule.CommandParameter2));
                }
            }
            else if (rule.CommandType == SimpleWizardCommandTypes.DialAdvanced)
            {
                m_ruleAdvancedDialString.Text = rule.CommandParameter1;
                m_ruleRingDuration.Text = rule.CommandParameter2;
                m_ruleAnswerDuration.Text = rule.CommandParameter3;
            }
            else if (rule.CommandType == SimpleWizardCommandTypes.Reject)
            {
                m_rejectResponseCode.SelectedIndex = m_rejectResponseCode.Items.IndexOf(m_rejectResponseCode.Items.Single(x => ((TextBlock)x).Text.StartsWith(rule.CommandParameter1)));
                m_rejectReason.Text = rule.CommandParameter2;
            }
            else if (rule.CommandType == SimpleWizardCommandTypes.HighriseLookup)
            {
                m_highriseURL.Text = rule.CommandParameter1;
                m_highriseToken.Text = rule.CommandParameter2;
                m_recordHighriseNote.IsChecked = (rule.CommandParameter3 != null) ? Convert.ToBoolean(rule.CommandParameter3) : false;
                m_asyncHighrise.IsChecked = (rule.CommandParameter4 != null) ? Convert.ToBoolean(rule.CommandParameter4) : false;
            }
        }