From: DrMajorBob on
As far as I can tell, y isn't used or displayed in these solutions and
isn't defined outside the panel, so what's all that "assign" gyration
about?

Bobby

On Wed, 20 Jan 2010 05:46:01 -0600, Patrick Scheibe
<pscheibe(a)trm.uni-leipzig.de> wrote:

> Hi,
>
> it matters that your assign and initialize functions have DownValues.
>
> Panel(a)DynamicModule[{x, y, assign, initialize},
> Grid[{{"", "A", "B"}, {"w/ assign:",
> RadioButton[Dynamic[x, (x = #; assign[]) &], True],
> RadioButton[Dynamic[x, (x = #; assign[]) &],
> False]}, {"w/o assign:", RadioButton[Dynamic@x, True],
> RadioButton[Dynamic@x, False]}, {"value:", Dynamic@x}},
> Dividers -> {False, {False, True, True, True, False}},
> Alignment -> {Left, {Center}}],
> Initialization :> (assign[] := (y =
> x);(*further variables to update*)
> initialize[] := (x = True; assign[]);(*initialization function*)
> initialize[];)]
>
> Cheers
> Patrick
>
>
> On Tue, 2010-01-19 at 05:14 -0500, István wrote:
>> Dear Group,
>>
>> I have some problem with a complex interface inside a DynamicModule.
>> This is a toy version of the program, which can fully reproduce the
>> malfunction:
>>
>> Panel(a)DynamicModule[
>> {x, y, assign, initialize},
>>
>> Grid[{
>> {"", "A", "B"},
>> {"w/ assign:", RadioButton[Dynamic[x, (x = #; assign) &], True],
>> RadioButton[Dynamic[x, (x = #; assign) &], False]},
>> {"w/o assign:", RadioButton[Dynamic@x, True],
>> RadioButton[Dynamic@x, False]},
>> {"value:", Dynamic@x}
>> }, Dividers -> {False, {False, True, True, True, False}},
>> Alignment -> {Left, {Center}}],
>>
>> Initialization :> (
>> assign := (y = x);(* further variables to update *)
>> initialize := (x = True; assign); (* initialization function *)
>> initialize;
>> )
>> ]
>>
>> Now for some reason, the radiobuttons do not function as intended (at
>> least as I want).
>> The following clicking orders do not work:
>>
>> [w/ + B] then [w/ + A]
>> [w/o + B] then [w/ + A]
>>
>> these work correctly:
>>
>> [w/ + B] then [w/o + A]
>> [w/o + B] then [w/o + A]
>>
>> I guess, that the problem is with the "initialize" (or the "assign")
>> function. Any idea?
>> Thanks in advance
>>
>> Istv=E1n
>>
>
>


--
DrMajorBob(a)yahoo.com