[NTG-context] Widgets: Any good examples for developing JS-enabled PDFs that calculate?
Henning Hraban Ramm
texml at fiee.net
Mon Nov 18 16:15:28 CET 2019
Hi,
I didn’t check your example, but I remember that JScode did only work if there’s also a JSpreamble.
Also the "used now" keyword (see Hans’ message) is essential.
HTH. Sorry, no time for further investigation.
Hraban
> Am 2019-11-17 um 21:13 schrieb Paul Mazaitis <pm39 at andrew.cmu.edu>:
>
>
> Hi everyone,
>
> First: apologies for the long email; this got a little complicated.
>
> Summary: there may be a bug in setting up calculate field for widgets?
>
> Parts:
>
> - calculator.tex
> - A M(N)WE
> - The MWE Only Sort of Works
>
> # calculator.tex
>
> On 13 Nov 2019, at 10:26, Pablo Rodriguez wrote:
>
>> Hi Paul,
>
>> I wonder whether
>> tex/texmf-context/doc/context/examples/calculator/calculator.tex from
>> the ConTeXt Suite might be what you look for.
>>
>> Just in case it helps,
>
> It does (and is quite something!); it's not quite what I need, though. I'd like to take advantage of the internal _calculate_ event when a field updates - the calculator.tex PDF appears to be entirely programmatically event driven?
>
> (Which could certainly work for my application, but I want to try to keep this as simple for the user as possible.)
>
>> Pablo
>
> # A M(N)WE
>
> Here's a Minimal Working Example, with some caveats:
>
> --- begin MWE ---
>
> \usemodule[fields]
>
> \starttext
>
> \setupinteraction [state=start]
>
> \startJScode{tallyUp}
> var a_fld = this.getField("A");
> var b_fld = this.getField("B");
> event.value = a_fld.value + b_fld.value;
> \stopJScode
>
> \setupfield[numField][reset,horizontal]
> [height=2pc,rulethickness=1pt,framecolor=lightgrey]
>
> \setupfield[totalField][reset,horizontal]
> [
> height=2pc,
> rulethickness=1pt,
> framecolor=lightgrey,
> option=readonly,
> calculate=JS(tallyUp),
> ]
>
> \definefield[A][line][numField][]
> \definefield[B][line][numField][]
>
> \definefield[Total][line][totalField][]
>
> A: \field[A]
>
> B: \field[B]
>
> \blank[big]
>
> Total: \field[Total]
>
> \stoptext
>
> --- end MWE ---
More information about the ntg-context
mailing list