diff options
author | Karl Berry <karl@freefriends.org> | 2010-12-18 00:39:11 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2010-12-18 00:39:11 +0000 |
commit | 4a73b1d699271435818be5da6dafd30dfd77f8e4 (patch) | |
tree | 259babba8bd9c63550d24196ba2ab70686aac3f1 /Master/texmf-dist/tex/latex | |
parent | f51d0af7ed4d2b504e2bff7402ac9934879e842e (diff) |
fancytooltips 1.8 (18dec10)
git-svn-id: svn://tug.org/texlive/trunk@20781 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex')
-rw-r--r-- | Master/texmf-dist/tex/latex/fancytooltips/fancytipmark.pdf | bin | 1245 -> 1454 bytes | |||
-rw-r--r-- | Master/texmf-dist/tex/latex/fancytooltips/fancytooltips.sty | 370 |
2 files changed, 289 insertions, 81 deletions
diff --git a/Master/texmf-dist/tex/latex/fancytooltips/fancytipmark.pdf b/Master/texmf-dist/tex/latex/fancytooltips/fancytipmark.pdf Binary files differindex ee5af6ab93c..75e0f26d72c 100644 --- a/Master/texmf-dist/tex/latex/fancytooltips/fancytipmark.pdf +++ b/Master/texmf-dist/tex/latex/fancytooltips/fancytipmark.pdf diff --git a/Master/texmf-dist/tex/latex/fancytooltips/fancytooltips.sty b/Master/texmf-dist/tex/latex/fancytooltips/fancytooltips.sty index 1504e3d0f2e..fbf45d176bb 100644 --- a/Master/texmf-dist/tex/latex/fancytooltips/fancytooltips.sty +++ b/Master/texmf-dist/tex/latex/fancytooltips/fancytooltips.sty @@ -22,26 +22,25 @@ %% \NeedsTeXFormat{LaTeX2e}[1999/12/01] \ProvidesPackage{fancytooltips} - [2010/04/10 v1.6 fancytooltips.dtx file] -\RequirePackage{everyshi} + [2010/06/10 v1.8 fancytooltips.dtx file] \RequirePackage{graphicx} \RequirePackage{xkeyval} -\RequirePackage{eso-pic} +\RequirePackage{atbegshi} -\newif\ifcreatetips\createtipsfalse -\DeclareOptionX{createtips}{\createtipstrue} +\newif\if@fancytooltips@createtips\@fancytooltips@createtipsfalse +\DeclareOptionX{createtips}{\@fancytooltips@createtipstrue} \newif\ifTooltip@usepdftex\Tooltip@usepdftextrue \DeclareOptionX{dvips}{\Tooltip@usepdftexfalse} -\newif\ifextratext\extratexttrue -\DeclareOptionX{noextratext}{\extratextfalse} +\newif\if@fancytooltips@extratext\@fancytooltips@extratexttrue +\DeclareOptionX{noextratext}{\@fancytooltips@extratextfalse} -\newif\ifmovetips\movetipsfalse -\DeclareOptionX{movetips}{\movetipstrue} +\newif\if@fancytooltips@movetips\@fancytooltips@movetipsfalse +\DeclareOptionX{movetips}{\@fancytooltips@movetipstrue} -\newif\ifmouseover\mouseoverfalse -\DeclareOptionX{mouseover}{\mouseovertrue} +\newif\if@fancytooltips@mouseover\@fancytooltips@mouseoverfalse +\DeclareOptionX{mouseover}{\@fancytooltips@mouseovertrue} \newif\if@fancytooltips@inactive\@fancytooltips@inactivefalse \DeclareOptionX{inactive}{\@fancytooltips@inactivetrue} @@ -49,9 +48,19 @@ \newif\if@fancytooltips@active\@fancytooltips@activefalse \DeclareOptionX{active}{\@fancytooltips@activetrue} +\newif\if@fancytooltips@fg\@fancytooltips@fgfalse +\DeclareOptionX{fg}{\@fancytooltips@fgtrue} + \DeclareOptionX{filename}{\xdef\TooltipFilename{#1}} \DeclareOptionX{pages}{\xdef\TooltipPages{#1}} +\newif\if@fancytooltips@blur\@fancytooltips@blurfalse +\DeclareOptionX{blur}[0.4]{\@fancytooltips@blurtrue + \xdef\fancytooltips@transparency{#1}} + +\newif\if@fancytooltips@fixcolor\@fancytooltips@fixcolorfalse +\DeclareOptionX{fixcolor}{\@fancytooltips@fixcolortrue} + \def\fancytooltipsdebugmsg{} \DeclareOptionX{debug}{\def \fancytooltipsdebugmsg { @@ -67,10 +76,27 @@ if (this.getField("animtiph") == null) \ProcessOptionsX +\if@fancytooltips@blur +\ifTooltip@usepdftex\else +\@fancytooltips@blurfalse +\AtEndDocument{\PackageWarning{fancytooltips} + {Blur option is incompatible with dvips. ^^J The option blur is turned off }} +\fi +\fi + +\ifTooltip@usepdftex\else +\@fancytooltips@fgfalse +\fi + \newdimen\buttontipwidth \newdimen\buttontipheight \newdimen\fancy@a \newdimen\fancy@b +\newdimen\fancy@layerHshift\fancy@layerHshift=0pt +\newdimen\fancy@layerVshift\fancy@layerVshift=0pt +\newdimen\fancy@button@Vshift \fancy@button@Vshift=0pt +\newdimen\fancy@button@Hshift \fancy@button@Hshift=0pt +\newtoks\pos@fancy@toks \if@fancytooltips@active\@fancytooltips@inactivefalse\fi @@ -87,6 +113,11 @@ if (this.getField("animtiph") == null) \def\TooltipPage#1#2{}% \let\TooltipExtratext\relax \let\TooltipRefmark\relax +\ifx\@ocg@makeknown\undefined + \def\@ocg@makeknown#1#2#3{}\fi +\def\fancy@@pushButton#1#2#3#4#5#6#7#8{} +\def\fancy@@anim@pushButton#1#2#3#4#5#6#7#8#9{} + \PackageWarning{fancytooltips}{Fancytooltips inactive}% \expandafter\endinput\fi @@ -116,15 +147,15 @@ if (this.getField("animtiph") == null) \hss}% \fi} \ifTooltip@usepdftex -\def\TooltipRefmark{\hbox {\raisebox{0.4em}{\includegraphics[width=0.7em]% - {fancytipmark.pdf}}}}% +\def\TooltipRefmark{\hbox {\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% + {fancytipmark.pdf}}}}}% \else -\def\TooltipRefmark{\hbox {\raisebox{0.4em}{\includegraphics[width=0.7em]% - {fancytipmark.eps}}}}% +\def\TooltipRefmark{\hbox {\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% + {fancytipmark.eps}}}}}% \fi%\ifTooltip@usepdftex } -\ifcreatetips +\if@fancytooltips@createtips \newwrite\tipfile \immediate\openout\tipfile \jobname.tips \def\keytip#1{\write\tipfile{\string\tooltipname{#1}{\arabic{page}}}} @@ -136,14 +167,14 @@ if (this.getField("animtiph") == null) \ifTooltip@usepdftex \RequirePackage[pdftex]{eforms} -\def\TooltipExtratext{\hbox{\raisebox{0.4em}{\includegraphics[width=0.7em]% - {fancytipmark.pdf}}}} +\def\TooltipExtratext{\hbox{\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% + {fancytipmark.pdf}}}}} \else \RequirePackage[dvips]{eforms} -\def\TooltipExtratext{\hbox{\raisebox{0.4em}{\includegraphics[width=0.7em]% - {fancytipmark.eps}}}} +\def\TooltipExtratext{\hbox{\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% + {fancytipmark.eps}}}}} \fi%\ifTooltip@usepdftex -\ifextratext\else\let\TooltipExtratext\relax\fi +\if@fancytooltips@extratext\else\let\TooltipExtratext\relax\fi \AtBeginDocument{ \global\buttontipwidth=\paperwidth @@ -162,7 +193,7 @@ if (this.getField("animtiph") == null) /BS << /W 1 /S /S >> /MK << /TP 1 /IF <</A[1.0 1.0]/SW /B>> >> }% - \vbox to \buttontipheight {\vss\hbox to \buttontipwidth{\hss}}\pdfendlink} + \vbox to \buttontipheight {\vss\hbox to \buttontipwidth{\hss}}\pdfendlink}% \else \def\everyeqIcon#1{\def\every@eqIcon{#1}} \def\every@eqIcon{} @@ -178,9 +209,25 @@ if (this.getField("animtiph") == null) \textColor{0 g}\Ff{\FfReadOnly} } \def\frametip@{\eqIconFTT[\BC{}\BG{}\F{\FHidden}]% - {ikona.\thepage}{\paperwidth}{\paperheight}}% + {ikona.\thepage}{\paperwidth}{\paperheight}% +}% \fi%\ifTooltip@usepdftex +\def\fancytooltips@one{1} +\if@fancytooltips@blur + \RequirePackage{ocg} + \ifx\fancytooltips@one\fancytooltips@transparency + \def\transparent#1{} + \else + \RequirePackage{transparent} + \fi +\else + \ifx\@ocg@makeknown\undefined + \def\@ocg@makeknown#1#2#3{}\fi +\fi + +\if@fancytooltips@fg\else +\RequirePackage{eso-pic} \def\frametip{% \expandafter\ifx \csname TooltipPage\thepage\endcsname\relax \else @@ -188,6 +235,43 @@ if (this.getField("animtiph") == null) \hbox{\raise \dp0 \box0} \fi}% \AddToShipoutPicture{\hbox to 0 pt{\frametip\hss}} +\fi + +\def\fancytooltips@save@position{\pdfsavepos% + \write\@auxout{\string\global\string \fancy@layerVshift \the\pdflastypos sp\string\relax}% + \write\@auxout{\string\global\string \fancy@layerHshift \the\pdflastxpos sp\string\relax}% +} + +\def\fancy@beginshipout@hook{} +\AtBeginShipout{% +\TooltipPageopencloseJS +\setbox\AtBeginShipoutBox=\hbox{% + \hbox to 0 pt{\TooltipHidden}\global\def\TooltipHidden{}% + \fancy@beginshipout@hook\if@fancytooltips@fixcolor\hbox to 0 pt{\resizebox{1pt}{!}{\TooltipExtratext}\hss}\fi + \hbox{\box\AtBeginShipoutBox}% + \ifTooltip@usepdftex + \fancytooltips@save@position + \if@fancytooltips@blur + \expandafter\ifx \csname TooltipPage\thepage\endcsname\relax \else + \lower\fancy@layerVshift\hbox to 0 pt{\kern-\fancy@layerHshift\relax + \begin{ocg}{fancyOCG\thepage}{fancyOCG\thepage}{0}% + \expandafter\transparent\expandafter{\fancytooltips@transparency}% + \color{black}% + \vbox to 0 pt{\vss\hbox{\vrule width \paperwidth height \paperheight}}% + \end{ocg}\hss}% + \fi + \fi + \if@fancytooltips@fg + \expandafter\ifx \csname TooltipPage\thepage\endcsname\relax + \else + \lower\fancy@layerVshift\vbox to 0 pt{\vss\hbox to 0 pt{\kern-\fancy@layerHshift\relax\hbox{\frametip@}\hss}}% + \fi + \lower\fancy@layerVshift\vbox to 0 pt{\vss\hbox to 0 pt{\kern-\fancy@layerHshift\relax\hbox to 0 pt{\the\pos@fancy@toks\hss}}}% + \fi + \fi + }% +}% + \definecolor{tooltipcolor}{rgb}{0,0,1} \newcount\tooltip@count @@ -212,37 +296,75 @@ if (this.getField("animtiph") == null) \newcommand{\tooltip@Star}[2]{{\color{tooltipcolor}#1}% {\let\SaveTooltipExtratext\TooltipExtratext \let\TooltipExtratext\relax - \hbox to 0 pt{\tooltip@NoStar{\strut\SaveTooltipExtratext}{#2}\hss}}} + \hbox to 0 pt{\tooltip@NoStar{\SaveTooltipExtratext + \vrule height 10pt depth 0 pt width 0 pt}{#2}\hss}}} \newcommand{\tooltip@NoStar}[2]{% \global\advance\tooltip@count by 1% \edef\act{\write\@auxout{\noexpand\string\noexpand\TooltipPage{\the\tooltip@count}{\the\tooltip@pagetoks}}}\act - \edef\tooltippage{\csname Tooltipcount2page\the\tooltip@count \endcsname}% + \expandafter\ifx\csname Tooltipcount2page\the\tooltip@count \endcsname\relax + \global\edef\tooltippage{} + \else + \global\edef\tooltippage{\csname Tooltipcount2page\the\tooltip@count \endcsname}% + \fi \checkTipNumber{#2}\edef\TipNumber{\FindTipNumber{#2}}% - \def\tempfancytooltips{}% - \ifmovetips\edef\tempfancytooltips{nastav(\TipNumber,\tooltippage);}\fi \leavevmode - \setbox0=\hbox{{\color{tooltipcolor}{#1}}}\hbox to 0 pt{\copy0\smash{\TooltipExtratext}\hss}% - \fancy@a=\ht0 - \advance\fancy@a by \dp 0 - \fancy@b=0.5\fancy@a - \advance\fancy@b by -\dp0 - \advance\fancy@b by -2bp - \lower-\fancy@b\vtop{\hbox{% - \pushButton[\BC{}\BG{}\S{}\AA{\AAMouseExit{\fancy@JS{CloseTooltips();}}% - \ifmouseover - \AAMouseEnter{\fancy@JS{this.getField("ikona."+(\tooltippage)).hidden=false; + \setbox0=\hbox{{\color{tooltipcolor}{#1}}}\copy0\fancy@a=\dp0\advance\fancy@a by \ht0\relax\hbox to 0 pt{\smash{\TooltipExtratext}\hss}\fancy@pushButton{\TipNumber}{\tooltippage}{TooltipField}{\wd0}{\fancy@a}{\dp0}} + +\def\fancy@tooltip@options#1#2{\BC{}\BG{} + \S{}\AA{\AAMouseExit{\fancy@JS{CloseTooltips();}}% + \if@fancytooltips@mouseover + \AAMouseEnter{\fancy@JS{this.getField("ikona."+(#2)).hidden=false; try {app.clearInterval(animace);}catch (e) {} - \tempfancytooltips - zobraz(\TipNumber,\tooltippage); + \if@fancytooltips@movetips nastav(#1,#2);\fi + \if@fancytooltips@blur + try{ + for(var i=0; fancytooltipsOCGs && i<fancytooltipsOCGs.length;i++) + { + if(fancytooltipsOCGs[i].name == "fancyOCG"+(#2)) + fancytooltipsOCGs[i].state = true; + else + fancytooltipsOCGs[i].state = false; + }} catch (e) {}; + \fi + zobraz(#1,#2); }} \fi} - \A{\fancy@JS{this.getField("ikona."+(\tooltippage)).hidden=false; + \A{\fancy@JS{this.getField("ikona."+(#2)).hidden=false; try {app.clearInterval(animace);}catch (e) {} - \tempfancytooltips - zobraz(\TipNumber,\tooltippage); - }}] - {TooltipField}{\wd0}{\fancy@a}}}} + \if@fancytooltips@movetips nastav(#1,#2);\fi + \if@fancytooltips@blur + try { + for(var i=0; fancytooltipsOCGs && i<fancytooltipsOCGs.length;i++) + { + if(fancytooltipsOCGs[i].name == "fancyOCG"+(#2)) + fancytooltipsOCGs[i].state = true; + else + fancytooltipsOCGs[i].state = false; + }} catch (e) {}; + \fi + zobraz(#1,#2); + }}} + +\newtoks\@fxtoks\@fxtoks={\the\pdflastxpos} +\newtoks\@fytoks\@fytoks={\the\pdflastypos} + +\def\fancy@pushButton#1#2#3#4#5#6{% + \lower #6\hbox to 0 pt{\hss\expandafter\pushButton\expandafter[\fancy@tooltip@options{#1}{#2}]{#3}{#4}{#5}}} +\def\fancy@@pushButton#1#2#3#4#5#6#7#8{} + +\ifTooltip@usepdftex +\if@fancytooltips@fg +\def\fancy@pushButton#1#2#3#4#5#6{\pdfsavepos% + \edef\act{\write\@auxout{\string\fancy@@pushButton{#1}{#2}{#3}{\the#4}{\the#5}{\the\@fxtoks}{\the\@fytoks}{\the#6}}}\act% +} +\def\fancy@@pushButton#1#2#3#4#5#6#7#8{% + \expandafter\global\expandafter\pos@fancy@toks\expandafter{\the\pos@fancy@toks\fancy@onlypage{#2}{\vbox to 0 pt{\vss\hbox to 0 pt{\kern #6 sp\hbox to 0 pt{\hss\expandafter\pushButton\expandafter[\fancy@tooltip@options{#1}{#2}]{#3}{#4}{#5}}\hss}\kern #7sp\kern-#8}}}} +\fi +\fi + +\def\fancy@onlypage#1#2{\def\ft@a{#1}\edef\ft@b{\thepage}% +\ifx\ft@a\ft@b#2\fi} \def\delayinterval{200} @@ -254,86 +376,172 @@ if (this.getField("animtiph") == null) \newcommand{\tooltipanim@Star}[3]{{\color{tooltipcolor}#1}% {\let\SaveTooltipExtratext\TooltipExtratext \let\TooltipExtratext\relax - \hbox to 0 pt{\tooltipanim@NoStar{\strut\SaveTooltipExtratext}{#2}{#3}\hss}}} + \hbox to 0 pt{\tooltipanim@NoStar{\SaveTooltipExtratext + \vrule height 10pt depth 0 pt width 0 pt}{#2}{#3}\hss}}} \newcommand{\tooltipanim@NoStar}[3]{% \global\advance\tooltip@count by 1% \edef\act{\write\@auxout{\noexpand\string\noexpand\TooltipPage{\the\tooltip@count}{\the\tooltip@pagetoks}}}\act - \edef\tooltippage{\csname Tooltipcount2page\the\tooltip@count \endcsname}% + \expandafter\ifx\csname Tooltipcount2page\the\tooltip@count \endcsname\relax + \global\edef\tooltippage{} + \else + \global\edef\tooltippage{\csname Tooltipcount2page\the\tooltip@count \endcsname}% + \fi \checkTipNumber{#2}\edef\TipNumberA{\FindTipNumber{#2}}% \checkTipNumber{#3}\edef\TipNumberB{\FindTipNumber{#3}}% \leavevmode - \setbox0=\hbox{{\color{tooltipcolor}{#1}}}\hbox to 0 pt{\copy0\smash{\TooltipExtratext}\hss}% - \def\tempfancytooltips{}% - \ifmovetips\edef\tempfancytooltips{nastav(\TipNumberA,\tooltippage);}\fi - \fancy@a=\ht0 - \advance\fancy@a by \dp 0 - \fancy@b=0.5\fancy@a - \advance\fancy@b by -\dp0 - \advance\fancy@b by -2bp - \lower-\fancy@b\vtop{\hbox{% - \pushButton[\BC{}\BG{}\S{}\AA{\AAMouseExit{\fancy@JS{CloseTooltips();}} - \ifmouseover + \setbox0=\hbox{{\color{tooltipcolor}{#1}}}\copy0\fancy@a=\dp0\advance\fancy@a by \ht0\relax\hbox to 0 pt{\smash{\TooltipExtratext}\hss}\fancy@anim@pushButton{\TipNumberA}{\tooltippage}{TooltipField}{\wd0}{\fancy@a}{\dp0}{\TipNumberB}} + +\def\fancy@tooltipanim@options#1#2#3{ +\BC{}\BG{}\S{}\AA{\AAMouseExit{\fancy@JS{CloseTooltips();}} + \if@fancytooltips@mouseover \AAMouseEnter{\fancy@JS{ try {app.clearInterval(animace);}catch (e) {} - var cislo=\TipNumberA; - \tempfancytooltips + var cislo=#1; + \if@fancytooltips@movetips nastav(#1,#2);\fi + \if@fancytooltips@blur + try{ + for(var i=0; fancytooltipsOCGs && i<fancytooltipsOCGs.length;i++) + { + if(fancytooltipsOCGs[i].name == "fancyOCG"+(#2)) + fancytooltipsOCGs[i].state = true; + else + fancytooltipsOCGs[i].state = false; + }} catch (e) {}; + \fi function animuj() { var DirtyBeforeTooltipanim=this.dirty; - if (cislo<\TipNumberB) cislo=cislo+1; - this.getField('ikona.'+(\tooltippage)).buttonSetIcon(this.getField("animtiph."+cislo).buttonGetIcon()); + if (cislo<#3) cislo=cislo+1; + this.getField('ikona.'+(#2)).buttonSetIcon(this.getField("animtiph."+cislo).buttonGetIcon()); this.dirty=DirtyBeforeTooltipanim; }; - this.getField('ikona.'+(\tooltippage)).buttonSetIcon(this.getField("animtiph."+\TipNumberA).buttonGetIcon()); - this.getField("ikona."+(\tooltippage)).hidden=false; + this.getField('ikona.'+(#2)).buttonSetIcon(this.getField("animtiph."+#1).buttonGetIcon()); + this.getField("ikona."+(#2)).hidden=false; animace=app.setInterval('animuj();', \delayinterval); }} \fi} \A{\fancy@JS{ try {app.clearInterval(animace);}catch (e) {} - var cislo=\TipNumberA; - \tempfancytooltips + var cislo=#1; + \if@fancytooltips@movetips nastav(#1,#2);\fi + \if@fancytooltips@blur + try{ + for(var i=0; fancytooltipsOCGs && i<fancytooltipsOCGs.length;i++) + { + if(fancytooltipsOCGs[i].name == "fancyOCG"+(#3)) + fancytooltipsOCGs[i].state = true; + else + fancytooltipsOCGs[i].state = false; + }} catch (e) {}; + \fi function animuj() { var DirtyBeforeTooltipanim=this.dirty; - if (cislo<\TipNumberB) cislo=cislo+1; - this.getField('ikona.'+(\tooltippage)).buttonSetIcon(this.getField("animtiph."+cislo).buttonGetIcon()); + if (cislo<#3) cislo=cislo+1; + this.getField('ikona.'+(#2)).buttonSetIcon(this.getField("animtiph."+cislo).buttonGetIcon()); this.dirty=DirtyBeforeTooltipanim; }; - this.getField('ikona.'+(\tooltippage)).buttonSetIcon(this.getField("animtiph."+\TipNumberA).buttonGetIcon()); - this.getField("ikona."+(\tooltippage)).hidden=false; + this.getField('ikona.'+(#2)).buttonSetIcon(this.getField("animtiph."+#1).buttonGetIcon()); + this.getField("ikona."+(#2)).hidden=false; animace=app.setInterval('animuj();', \delayinterval); }} - ]{TooltipField}{\wd0}{\fancy@a}}}} +} + +\def\fancy@anim@pushButton#1#2#3#4#5#6#7{% + \lower #6 \hbox to 0 pt{\hss\expandafter\pushButton\expandafter[\fancy@tooltipanim@options{#1}{#2}{#7}]{#3}{#4}{#5}}} +\def\fancy@@anim@pushButton#1#2#3#4#5#6#7#8#9{} + \ifTooltip@usepdftex -\def\TooltipPageopencloseJS{ \global\pdfpageattr{% - /AA << /O << /S /JavaScript /JS ( - var DirtyBeforeCloseTooltip=this.dirty; CloseTooltips(); this.dirty=DirtyBeforeCloseTooltip;) >> >>}% +\if@fancytooltips@fg +\def\fancy@anim@pushButton#1#2#3#4#5#6#7{\pdfsavepos% + \edef\act{\write\@auxout{\string\fancy@@anim@pushButton{#1}{#2}{#3}{\the#4}{\the#5}{\the\@fxtoks}{\the\@fytoks}{\the#6}{#7}}}\act% +} +\def\fancy@@anim@pushButton#1#2#3#4#5#6#7#8#9{% + \expandafter\global\expandafter\pos@fancy@toks\expandafter{\the\pos@fancy@toks\fancy@onlypage{#2}{\vbox to 0 pt{\vss\hbox to 0 pt{\kern #6 sp\hbox to 0 pt{\hss\expandafter\pushButton\expandafter[\fancy@tooltipanim@options{#1}{#2}{#9}]{#3}{#4}{#5}}\hss}\kern #7sp\kern-#8}}}} +\fi +\fi + +\edef\fancytooltips@pdfpageattrJS{% + var DirtyBeforeCloseTooltip=this.dirty; + \if@fancytooltips@blur + try{ + var temp = fancytooltipsOCGs.length; + for(var i=0; fancytooltipsOCGs && i<fancytooltipsOCGs.length;i++) + { + fancytooltipsOCGs[i].state = false; + } + } + catch (e){} + \fi + CloseTooltips(); + this.dirty=DirtyBeforeCloseTooltip; +} +\ifTooltip@usepdftex +\edef\fancy@temp{/AA << /O << /S /JavaScript /JS ( + \fancytooltips@pdfpageattrJS) >> >>} +\expandafter\def\expandafter\TooltipPageopencloseJS\expandafter{ +\expandafter\global\expandafter\pdfpageattr\expandafter{\fancy@temp}% } \pdfximage{\TooltipFilename.pdf}% \edef\TooltipPages{\the\pdflastximagepages}% \else -\def\TooltipPageopencloseJS{ -\literalps@out{% - [ {ThisPage} << /AA << +\edef\fancy@temp{ [ {ThisPage} << /AA << /O << /S /JavaScript /JS (var DirtyBeforeCloseTooltip=this.dirty; CloseTooltips(); this.dirty=DirtyBeforeCloseTooltip;) >> - >> >> /PUT pdfmark}} -\OpenAction{/S /JavaScript /JS (var DirtyBeforeCloseTooltip=this.dirty; CloseTooltips(); this.dirty=DirtyBeforeCloseTooltip;)} + >> >> /PUT pdfmark} +\expandafter\def\expandafter\TooltipPageopencloseJS\expandafter{ +\expandafter\literalps@out\expandafter{\fancy@temp}} +\edef\fancy@@temp{/S /JavaScript /JS ( \fancytooltips@pdfpageattrJS)} +\expandafter\OpenAction\expandafter{\fancy@@temp} \fi%\ifTooltip@usepdftex -\EveryShipout{\TooltipPageopencloseJS}% \ifTooltip@usepdftex +\def\fancytempA{} +\ifx\FancytooltipsAfterClose\undefined\else\edef\fancytempA{\FancytooltipsAfterClose}\fi +\def\fancytempAA{} +\ifx\FancytooltipsAfterShow\undefined\else\edef\fancytempAA{\FancytooltipsAfterShow}\fi + +\if@fancytooltips@blur +\def\fancytempAAA{ + var inifancytooltipsOCGs = this.getOCGs(); + var fancytooltipsOCGs = []; + for(var i=0; inifancytooltipsOCGs && i<inifancytooltipsOCGs.length;i++) + { + if(inifancytooltipsOCGs[i].name.substr(0,5) == "fancy") + { + fancytooltipsOCGs.push(inifancytooltipsOCGs[i]); + inifancytooltipsOCGs[i].state=false; + } + } + inifancytooltipsOCGs[0].state=true; + inifancytooltipsOCGs[0].state=false; +} +\else +\def\fancytempAAA{} +\fi + +\if@fancytooltips@blur +\def\fancytempB{ + try {for(var i=0; fancytooltipsOCGs && i<fancytooltipsOCGs.length;i++) + {fancytooltipsOCGs[i].state = false;} } catch (e) {}} +\else +\def\fancytempB{} +\fi + \begin{insDLJS}[fancyTooltipsLoaded]{Tooltipsdljs}{DLJS for Tooltips} \fancytooltipsdebugmsg var animace; var fancyTooltipsLoaded = true; + \fancytempAAA + function CloseTooltips() { try {this.getField("ikona").hidden=true;}catch (e) {} try {app.clearInterval(animace);}catch (e) {} + \fancytempB + \fancytempA } function nastav(cislo,strana) @@ -361,6 +569,7 @@ if (this.getField("animtiph") == null) var g=this.getField("animtiph."+cislo); f.hidden=false; f.buttonSetIcon(g.buttonGetIcon()); + \fancytempAA } this.dirty=false; @@ -457,7 +666,6 @@ if (this.getField("animtiph") == null) \egroup \advance\count@\@ne}% } -\AddToShipoutPicture*{\hbox to 0 pt{\TooltipHidden}} \else \let\TooltipHidden\relax \fi @@ -473,7 +681,7 @@ if (this.getField("animtiph") == null) #1\else\csname FancyToolTip@#1\endcsname\fi} \def\checkTipNumber#1{\expandafter\ifx - \csname FancyToolTip@#1\endcsname\relax \PackageWarning{fancytooltips}{No + \csname FancyToolTip@#1\endcsname\relax \PackageInfo{fancytooltips}{No framenumber is assigned to keyword #1. I assume that #1 is the number of the frame.}% \fi} |