       Re: How to find which variable caused the trigger in Manipulate[]

• To: mathgroup at smc.vnet.net
• Subject: [mg103824] Re: How to find which variable caused the trigger in Manipulate[]
• From: "Nasser Abbasi" <nma at 12000.org>
• Date: Thu, 8 Oct 2009 07:50:18 -0400 (EDT)

```"Nasser Abbasi" <nma at 12000.org> wrote in message news:...

>
> Here is what I tried so far, and this fail:
>
> Manipulate[
>   Which[
>
>   x != oldx,
>   {oldx = x; Text[StringJoin["you moved the ", "x ",  " slider"]]},
>
>   y != oldy,
>   {oldy = y; Text[StringJoin["you moved the ", "y ", " slider"]]},
>
>   True, Text["why Ami here??"]
>  ],
>
>  {x, 0, 1},
>  {y, 0, 1},
>  {oldx, -999,  ControlType -> None},
>  {oldy, -999,  ControlType -> None}
> ]
>

As always seem to happen, after I posted the above, I find a solution.  All
what I have to do is track the correct symbols.

Here is the solution

Manipulate[

Which[

x != oldx,
{oldx = x; Text[StringJoin["you moved the ", "x ", " slider"]]},

y != oldy,
{oldy = y; Text[StringJoin["you moved the ", "y ", " slider"]]},

True, Text["why Ami here??"]
],

{x, 0, 1},
{y, 0, 1},
{oldx, -999, ControlType -> None},
{oldy, -999, ControlType -> None},

TrackedSymbols -> {x, y}  (*this is the trick*)
]

By telling Mathematica to only track x and y and not oldx and oldy, I get
what I want !

--Nasser

```

• Prev by Date: Generating a finite sigma-algebra
• Next by Date: AxesLabel from expression
• Previous by thread: Re: How to find which variable caused the trigger in Manipulate[]
• Next by thread: Re: How to find which variable caused the trigger in Manipulate[]