I would like to get input from an interactive dialog that uses Manipulate[]. But I find that my Manipulate[] breaks when I put it inside a DialogInput[]. So, when I try DialogInput[Manipulate[Plot[Sin[e x], {x, 0, 2 \[Pi]}], {e, 1, 10}]] the plot inside the dialog is not connected to the Manipulate[] slider. What am I missing here?

-

Try using global variables. Return the value with DialogReturn.

res = DialogInput[{
TextCell["Set value of e. Then click Proceed."],
Manipulate[Plot[Sin[e x], {x, 0, 2 \[Pi]}], {e, 1, 10,
Appearance -> "Open" },
LocalizeVariables -> False],
Button["Proceed", DialogReturn[e]]
}]


-
Nice. This may be the first practical use I've seen of LocalizeVariables -> False. –  Mr.Wizard Feb 21 '12 at 23:05
Thanks, that's great. –  Greg P Feb 21 '12 at 23:18