{{header}}
{{include ../../xfa_catalog_1_0.fragment}}
{{include ../../xfa_object_2_0.fragment}}
{{include ../../xfa_preamble_3_0.fragment}}
{{include ../../xfa_config_4_0.fragment}}
{{object 5 0}} <<
  {{streamlen}}
>>
stream
<template>
  <subform layout="tb">
    <exclGroup name="RadioButtonList" layout="lr-tb">
      <field w="30mm" h="6mm" name="yes">
        <ui>
          <checkButton shape="round">
          </checkButton>
        </ui>
        <items>
          <text>Agree</text>
        </items>
      </field>
      <field w="30mm" h="6mm" name="no">
        <ui>
          <checkButton shape="round">
          </checkButton>
        </ui>
        <items>
          <text>Disagree</text>
        </items>
      </field>
      <validate nullTest="error"/>
    </exclGroup>
    <event activity="initialize">
      <script contentType="application/x-javascript"><![CDATA[
        {{include ../expect.js}}
        expect("RadioButtonList.className", "exclGroup");

        expectError("RadioButtonList.execEvent()");
        expectError("RadioButtonList.execEvent(1, 2)");
        expect("RadioButtonList.execEvent('nonesuch')", null);
        expect("RadioButtonList.execEvent('calculate')", null);
        expect("RadioButtonList.execEvent('change')", null);
        expect("RadioButtonList.execEvent('click')", null);
        expect("RadioButtonList.execEvent('enter')", null);
        expect("RadioButtonList.execEvent('exit')", null);
        expect("RadioButtonList.execEvent('full')", null);
        expect("RadioButtonList.execEvent('indexChange')", null);
        expect("RadioButtonList.execEvent('initialize')", null);
        expect("RadioButtonList.execEvent('mouseDown')", null);
        expect("RadioButtonList.execEvent('mouseEnter')", null);
        expect("RadioButtonList.execEvent('mouseExit')", null);
        expect("RadioButtonList.execEvent('mouseUp')", null);
        expect("RadioButtonList.execEvent('postOpen')", null);
        expect("RadioButtonList.execEvent('preOpen')", null);
        expect("RadioButtonList.execEvent('preSign')", null);
        expect("RadioButtonList.execEvent('validate')", null);

        expectError("RadioButtonList.execInitialize('badarg')");
        expect("RadioButtonList.execInitialize()", null);

        expectError("RadioButtonList.execCalculate('badarg')");
        expect("RadioButtonList.execCalculate()", null);

        expectError("RadioButtonList.execValidate('badarg')");
        expect("RadioButtonList.execValidate()", true);

        expectError("RadioButtonList.selectedMember('badarg')");
        expect("RadioButtonList.selectedMember()", null);

        expect("RadioButtonList.defaultValue",  undefined);
        expect("RadioButtonList.rawValue", null);
        expect("RadioButtonList.transient", undefined);
        expect("RadioButtonList.errorText", undefined);
      ]]></script>
    </event>
  </subform>
</template>
endstream
endobj
{{include ../../xfa_locale_6_0.fragment}}
{{include ../../xfa_postamble_7_0.fragment}}
{{include ../../xfa_pages_8_0.fragment}}
{{xref}}
{{trailer}}
{{startxref}}
%%EOF
