ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Henning Hraban Ramm <texml@fiee.net>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: Widgets: Any good examples for developing JS-enabled PDFs that calculate?
Date: Mon, 18 Nov 2019 16:15:28 +0100	[thread overview]
Message-ID: <29EB1078-FC73-486E-848F-5D22421B3BA4@fiee.net> (raw)
In-Reply-To: <ADE29B0D-B95B-4C22-8BE4-8B303C83F451@andrew.cmu.edu>

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@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  ---

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

  parent reply	other threads:[~2019-11-18 15:15 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-07 19:28 [Widgets] " Paul Mazaitis
2019-11-13 15:26 ` Pablo Rodriguez
2019-11-17 20:13   ` Widgets: " Paul Mazaitis
2019-11-18  8:48     ` Hans Hagen
2019-11-19 22:47       ` Paul Mazaitis
2019-11-18 15:15     ` Henning Hraban Ramm [this message]
2019-11-18 18:56       ` Hans Hagen
2019-11-19 13:59         ` Paul Mazaitis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=29EB1078-FC73-486E-848F-5D22421B3BA4@fiee.net \
    --to=texml@fiee.net \
    --cc=ntg-context@ntg.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).