DynamicModule causing problems with Manipulate setter bar
- To: mathgroup at smc.vnet.net
- Subject: [mg102748] DynamicModule causing problems with Manipulate setter bar
- From: Porscha Louise McRobbie <pmcrobbi at umich.edu>
- Date: Wed, 26 Aug 2009 07:42:06 -0400 (EDT)
Hello, I often have multiple Manipulate commands in a single file, and to avoid them interfering I always wrap them with a DynamicModule. The following Manipulate is the basic idea of what I want: Manipulate[ Plot[ffun[y, m1], {y, -1, 1}, Filling -> Axis, PlotRange -> {{-1, 1}, {-1.1, 1.1}}], {{ffun, f1, "\!\(\*SubscriptBox[\"f\", \"m\"]\)(x)"}, {f1 -> TraditionalForm[Sin[m Pi x]], f2 -> TraditionalForm[Cos[m Pi x]]}}, {{m1, 0, "m"}, 0, 3, 1}, Initialization :> { (f1[yy_, mm_] := Sin[mm Pi yy]), (f2[yy_, mm_] := Cos[mm Pi yy])}] However, I've noticed the following two problems when trying to wrap the above with DynamicModule: 1. If I place {f1,f2} inside DynamicModule, the graph seems fine but the blue highlighter color on the setter bar for fm(x) has disappeared. DynamicModule[{f1, f2}, Manipulate[ Plot[ffun[y, m1], {y, -1, 1}, Filling -> Axis, PlotRange -> {{-1, 1}, {-1.1, 1.1}}], {{ffun, f1, "\!\(\*SubscriptBox[\"f\", \"m\"]\)(x)"}, {f1 -> TraditionalForm[Sin[m Pi x]], f2 -> TraditionalForm[Cos[m Pi x]]}}, {{m1, 0, "m"}, 0, 3, 1}, Initialization :> { (f1[yy_, mm_] := Sin[mm Pi yy]), (f2[yy_, mm_] := Cos[mm Pi yy])}]] 2. If I place {f1,f2,m,x} inside DynamicModule, the graph seems fine but now the labels for "m" and "x" read "$$m" and "$$x" (in addition to the blue highlighting being gone). DynamicModule[{f1, f2, m, x}, Manipulate[ Plot[ffun[y, m1], {y, -1, 1}, Filling -> Axis, PlotRange -> {{-1, 1}, {-1.1, 1.1}}], {{ffun, f1, "\!\(\*SubscriptBox[\"f\", \"m\"]\)(x)"}, {f1 -> TraditionalForm[Sin[m Pi x]], f2 -> TraditionalForm[Cos[m Pi x]]}}, {{m1, 0, "m"}, 0, 3, 1}, Initialization :> { (f1[yy_, mm_] := Sin[mm Pi yy]), (f2[yy_, mm_] := Cos[mm Pi yy])}]] How can I localize the variables f1,f2,m,x but still have the labels look how I want them to? Many thanks! Porscha