Re: New lines in InputField
- To: mathgroup at smc.vnet.net
- Subject: [mg117717] Re: New lines in InputField
- From: "Chris Degnen" <degnen at cwgsy.net>
- Date: Wed, 30 Mar 2011 04:12:54 -0500 (EST)
I spoke too soon. Using the front end token HandleShiftReturn
doesn't replicate the correct effect of a pasted-in carriage return,
as becomes apparent when text justification is applied.
Is there another front end token that will do the trick? Thanks
CreateDialog[{TextCell["Enter your text here:"],
InputField[Dynamic[input], String, FieldSize -> {50, 12}],
DefaultButton[
DialogReturn[
CreateDocument[
Graphics[{Yellow, Rectangle[{0, 0}, {300, 200}], Black,
Inset[TextCell[input, 12, LineSpacing -> {0, 16},
TextJustification -> 1], {0, 200}, {Left, Top}, {300,
Automatic}]}, PlotRange -> {{0, 300}, {0, 200}},
ImageSize -> {300, 200}]]]]},
NotebookEventActions -> {"ReturnKeyDown" :>
FrontEndTokenExecute["HandleShiftReturn"]}];
> Aha, got it.
>
> CreateDialog[{TextCell["Enter your text here:"],
> InputField[Dynamic[input], String, FieldSize -> {50, 12}],
> DefaultButton[
> DialogReturn[CreateDocument[TextCell[input, "Print"]]]]},
> NotebookEventActions -> {"ReturnKeyDown" :>
> FrontEndTokenExecute["HandleShiftReturn"]}];
>
>
>
>> Can anyone suggest how to enter new lines in input text,
>> preferably using the return key?
>> In the example below I can paste into an input field a piece
>> of text which includes new lines, such as these two sentences,
>> but new lines can't be typed straight in to the input field,
>> as users are wont to do.
>>
>>
>> CreateDialog[{TextCell["Enter your text here:"],
>> InputField[Dynamic[input], String, FieldSize -> {50, 12}],
>> DefaultButton[
>> DialogReturn[CreateDocument[TextCell[input, "Print"]]]]},
>> NotebookEventActions -> {}];
>>
>>