I think I figured it out but it's a bit messy. Hopefully this will work or someone else will have a different idea.
<form>
<label>dashbaord label</label>
<init>
<set token="field1">Data1</set>
</init>
<fieldset submitButton="false">
<input type="checkbox" token="field1">
<label>field1</label>
<choice value="Data1">Data1</choice>
<choice value="Data2">Data2</choice>
<default>Data1</default>
<change>
<eval token="field1">if(isnull($field1$), " ", $field1$)</eval>
</change>
<initialValue>Data1</initialValue>
<delimiter> </delimiter>
</input>
</fieldset>
Okay so basically initialize the token (field1) at the top to the default vaule
Set the default and initial value in the definition of the checkbox (Data1)
Then the eval looks for the undefined (null) case when the box is unchecked.
Try below. Seems simpler. No need for OP's eval technique.
Had to use initialValue and not default.
<input type="checkbox" token="showhide_choice_tok" searchWhenChanged="true">
<label></label>
<choice value="yes">I want panels</choice>
<change>
<condition value="yes">
<set token="show_panels_tok">show</set>
</condition>
<condition>
<unset token="show_panels_tok"></unset>
</condition>
</change>
<delimiter> </delimiter>
<initialValue>yes</initialValue>
</input>
I think I figured it out but it's a bit messy. Hopefully this will work or someone else will have a different idea.
<form>
<label>dashbaord label</label>
<init>
<set token="field1">Data1</set>
</init>
<fieldset submitButton="false">
<input type="checkbox" token="field1">
<label>field1</label>
<choice value="Data1">Data1</choice>
<choice value="Data2">Data2</choice>
<default>Data1</default>
<change>
<eval token="field1">if(isnull($field1$), " ", $field1$)</eval>
</change>
<initialValue>Data1</initialValue>
<delimiter> </delimiter>
</input>
</fieldset>
Okay so basically initialize the token (field1) at the top to the default vaule
Set the default and initial value in the definition of the checkbox (Data1)
Then the eval looks for the undefined (null) case when the box is unchecked.