\documentclass[10pt,oneside,a4paper]{book}
\usepackage{amsmath,amsthm}
\usepackage[polish]{babel}
\usepackage[cp1250]{inputenc}
\usepackage{amsfonts}
\usepackage{polski}
\usepackage{color}
\usepackage{geometry}
\usepackage{lscape}
\usepackage{booktabs}




\usepackage[pdftex]{insdljs}


\begin{insDLJS}[test]{test}{JavaScript}

function Hello()
{
   var Syntezator = tts.getNthSpeakerName(0);
   tts.speaker = Syntezator;
   tts.qText ("When Latex met Java");
   tts.talk();
}

function HelloWorld()
{
   var Syntezator = tts.getNthSpeakerName(0);
   tts.speaker = Syntezator;
   tts.qText ("Hello World");
   tts.qText ("in Latex");
   tts.talk();
}


function My_Alert()
{
  text="Hello World"+"\n"+"in Latex";
  app.alert(text+" wykrzyknik",1);
  app.alert(text+" zapytanie",6);
}


function oblicz()
{
 var bok=0.0 + this.getField("bok").value;
 this.getField("obwod").value=bok*4;
 this.getField("pole").value=  Math.pow(bok, 2);
}

var wynik =0;
var liczba =0;
var ostatnia_operacja=0;

function operacja(x)
{
   if (liczba==0)
   {
      ostatnia_operacja = x;
   }
   else
   {
      switch(ostatnia_operacja)
      {
        case 0: wynik = liczba; break; 
        case 1: wynik = wynik + liczba; break; 
        case 2: wynik = wynik -liczba;break;
        case 3: wynik = wynik *liczba;break;
        case 4: if (liczba!=0)
                  {wynik = wynik / liczba;}
                else 
                  {app.alert("dzielenie przez zero",6);}
                  break;
      };
      liczba = 0;
      this.getField("licz").value=0;
      ostatnia_operacja=x;              
   }
   switch(x)
      {
        case 0: this.getField("wynik").value=  "="+wynik;break;
        case 1: this.getField("wynik").value=  "="+wynik + "+";break;
        case 2: this.getField("wynik").value=  "="+wynik + "-";break;
        case 3: this.getField("wynik").value=  "="+wynik + "*";break;
        case 4: this.getField("wynik").value=  "="+wynik + ":";break;
      };
}

function kalkulator(x)
{
   liczba =liczba*10 + x;
   this.getField("licz").value=liczba;
}

function clr()
{
wynik =0;
liczba =0;
ostatnia_operacja=0;
this.getField("wynik").value="=";
this.getField("licz").value=" ";
}

\end{insDLJS}

\OpenAction{/S/JavaScript/JS(Hello();)}

\usepackage{hyperref}

\begin{document}

\begin{center}
{\Large \bf  When Latex met Java }\\
\bigskip dr Karol Pąk\\
\bigskip
\end{center}

Informacja dla użytkowników \emph{overleaf}:
\emph{Templates} / search:  \emph{The AcroTeX Education Bundle}
w tym otoczeniu skompiluj \href{https://alioth.uwb.edu.pl/~pakkarol/Latex/latex_hello.tex}{\texttt{latex\_hello.tex}} i pobierz \texttt{.pdf}
(przyciski nie działaja w podglądzie overleaf).
Syntezator mowy działa w Adobe Acrobat Reader.



\bigskip
\begin{center}
%% Push button is defined here
\PushButton[name=hello,onclick={HelloWorld();}]{Hello World in Latex!}
\end{center}

\bigskip

\begin{center}
\PushButton[name=alert,onclick={My_Alert();}]{Okienko Alert!}
\end{center}


\begin{center}
Uzupełnij poniżesze pole:
\end{center}



Bok dlugosc:\TextField[name=bok,width=8em,bordercolor={0.9 .9 .9}]{}\\

\begin{center}
\PushButton[name=cos,onclick={oblicz();}]{Tajna matematyka}
\end{center}

Obwod to: \TextField[name=obwod,width=8em,bordercolor={0.9 .9 .9},readonly=true]{}\\
Pole to: \TextField[name=pole,width=8em,bordercolor={0.9 .9 .9},readonly=true]{}



\begin{center}
\newcommand{\MyText}[1]{{\:\strut\texttt{{#1}}\:}}

\begin{tabular}{p{4em}p{1em}p{1em}p{1em}p{1em}}
\multicolumn{5}{r}{\TextField[name=wynik,value={=},width=12em,bordercolor={.5 .5 .5},readonly=true,align=0]{}}\\
\multicolumn{5}{r}{\TextField[name=licz,width=12em,bordercolor={.5 .5 .5},readonly=true,align=2]{}}\\
\\
&
\PushButton[name=button1,borderwidth=0.2em,onclick={kalkulator(1);},bordercolor={.3 .3 .3}]{\MyText{1}} &
\PushButton[name=button2,borderwidth=0.2em,onclick={kalkulator(2);},bordercolor={.3 .3 .3}]{\MyText{2}} &
\PushButton[name=button3,borderwidth=0.2em,onclick={kalkulator(3);},bordercolor={.3 .3 .3}]{\MyText{3}}&
\PushButton[name=button3,borderwidth=0.2em,onclick={operacja(1);},bordercolor={.3 .3 .3}]{\MyText{+}}\\
&
\PushButton[name=button1,borderwidth=0.2em,onclick={kalkulator(4);},bordercolor={.3 .3 .3}]{\MyText{4}} &
\PushButton[name=button2,borderwidth=0.2em,onclick={kalkulator(5);},bordercolor={.3 .3 .3}]{\MyText{5}} &
\PushButton[name=button3,borderwidth=0.2em,onclick={kalkulator(6);},bordercolor={.3 .3 .3}]{\MyText{6}}&
\PushButton[name=button3,width=10em,borderwidth=0.2em,onclick={operacja(2);},bordercolor={.3 .3 .3}]{\MyText{-}}\\
&
\PushButton[name=button1,borderwidth=0.2em,onclick={kalkulator(7);},bordercolor={.3 .3 .3}]{\MyText{7}} &
\PushButton[name=button2,borderwidth=0.2em,onclick={kalkulator(8);},bordercolor={.3 .3 .3}]{\MyText{8}} &
\PushButton[name=button3,borderwidth=0.2em,onclick={kalkulator(9);},bordercolor={.3 .3 .3}]{\MyText{9}} &
\PushButton[name=button3,borderwidth=0.2em,onclick={operacja(3);},bordercolor={.3 .3 .3}]{\MyText{*}}\\
&
\PushButton[name=button1,borderwidth=0.2em,onclick={clr();},bordercolor={.3 .3 .3}]{\MyText{c}}&
\PushButton[name=button1,borderwidth=0.2em,onclick={kalkulator(0);},bordercolor={.3 .3 .3}]{\MyText{0}}&
\PushButton[name=button3,borderwidth=0.2em,onclick={operacja(0);},bordercolor={.3 .3 .3}]{\MyText{=}}&
\PushButton[name=button3,borderwidth=0.2em,onclick={operacja(4);},bordercolor={.3 .3 .3}]{\MyText{:}}\\
\\

\end{tabular}

\end{center}



\end{document}
