diff options
author | Karl Berry <karl@freefriends.org> | 2012-07-23 23:39:14 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2012-07-23 23:39:14 +0000 |
commit | dcafcb6002de76d00c5682bcea9b1e6ba7eb4fc1 (patch) | |
tree | 140e62d8eba86da70ccda2ecd297bb73c98b3e7a | |
parent | 6af7a636d58153a07da50f992189ca06599dc439 (diff) |
fancytooltips 1.12 (3jun12)
git-svn-id: svn://tug.org/texlive/trunk@27129 c570f23f-e606-0410-a88d-b1316a301751
58 files changed, 1167 insertions, 4091 deletions
diff --git a/Master/texmf-dist/doc/latex/fancytooltips/cite.png b/Master/texmf-dist/doc/latex/fancytooltips/cite.png Binary files differnew file mode 100644 index 00000000000..8ea4534185c --- /dev/null +++ b/Master/texmf-dist/doc/latex/fancytooltips/cite.png diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview-demo.pdf b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview-demo.pdf Binary files differnew file mode 100644 index 00000000000..b1c5c66d961 --- /dev/null +++ b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview-demo.pdf diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview/fancy-preview-demo.sin.table b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview-demo.sin.table index e1383fb5ffc..e1383fb5ffc 100644 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview/fancy-preview-demo.sin.table +++ b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview-demo.sin.table diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview/fancy-preview-demo.tex b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview-demo.tex index f536293315e..e5361d82a57 100644 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview/fancy-preview-demo.tex +++ b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview-demo.tex @@ -3,7 +3,7 @@ %\usetheme{Ilmenau} %\usetheme{Marburg} -\usetheme{PaloAlto} +%\usetheme{PaloAlto} \setbeamertemplate{theorems}[numbered] \usepackage{amsthm,amsmath,graphicx,color} @@ -11,16 +11,13 @@ \usepackage{tikz} \PassOptionsToPackage{naturalnames}{hyperref} -\usepackage[inactive,blur=0.6, fixcolor]{fancytooltips} - \newtheorem{remark}{Remark} \def\dx{{\mathrm d}x} \definecolor{darkgreen}{rgb}{0,0.6,0} +\usepackage[inactive]{fancytooltips} \begin{document} -\FancyHook - \title{Fantytooltips demo} \author{Robert Ma\v{r}\'ik} @@ -39,14 +36,13 @@ presentation -- see for example Figure \ref{pic:sine} (move the mouse to the blue mark). \item Explanation how we achieved this behaviour. - \item Simple howto. \end{itemize} \end{frame} \section{Math text example} \begin{frame}{Demo: Definitions} - \begin{definition}[Excellent number] + \begin{definition}[Excellent number{\cite[citation only for testing]{D-1}}] Let $n$ be positive integer. The number $n$ is said to be \textit{excellent}, if the last digit of the number $\alpha$ defined by the relation @@ -56,16 +52,21 @@ \end{equation} equals $1$.\label{def:excellent-number} \end{definition} - - (Note that from \eqref{eq:excel} it follows that $\alpha$ is - integer, see \ref{eq:sin}.) - -\begin{definition}[Happy number] - Let $n$ be positive integer. The number $n$ is said to be - \textit{happy}, if the last digit of the number $n$ equals $1$. - \label{def:happy-number} -\end{definition} -\end{frame} + + {(Note that from \eqref{eq:excel} it follows that $\alpha$ is + integer, see \ref{eq:sin}.) } + + {\begin{definition}[Happy number] + Let $n$ be positive integer. The number $n$ is said to be + \textit{happy}, if the last digit of the number $n$ equals $1$. + \label{def:happy-number} + \end{definition}} + + {Citations are also extracted. See \cite{D,D-R,D-F,D-Rez}. You + \textit{have to} insert emtpy line after each \texttt{\textbackslash + bibitem} command. Ordinary \tooltip{tooltips}{hodnost} and + \tooltipanim{animations}{4}{28} also work.} + \end{frame} \begin{frame}{Demo: Example and comments} \begin{example} @@ -76,11 +77,10 @@ \begin{alertblock}{Fancytooltips comment} Put the mouse pointer to the graphical symbol following definitions numbers. You will see the definitions again. We can also refer to - equation, like this: \eqref{eq:excel} (note that you see the whole - enclosing definition, not only the equation). Note that the same - reference has been used on previous slide and the tooltip has not - been attached, since the reference to \eqref{eq:excel} on the - previous page is at the same page as its target. + equation, like this: \eqref{eq:excel}. Note that the same reference + has been used on previous slide and the tooltip has not been + attached, since the reference to \eqref{eq:excel} on the previous + page is at the same page as its target. \end{alertblock} \end{frame} @@ -191,68 +191,59 @@ \end{itemize} \end{frame} - \section{Short howto} - \begin{frame} - \frametitle{How to create a presentation with pdf\LaTeX} -% Creating tooltips is easy. Simply follow these steps. - \begin{itemize} - \item Create presentation with your favorit presentation package, - such as - \href{http://www.ctan.org/tex-archive/help/Catalogue/entries/acrotex-web.html}{\color{blue}web}, - \href{http://www.ctan.org/tex-archive/macros/latex/contrib/pdfscreen/}{\color{blue}pdfscreen} - or - \href{http://www.ctan.org/tex-archive/help/Catalogue/entries/beamer.html}{\color{blue}beamer}. - \item Insert - \begin{quote}\upshape\color{red} - \texttt{\textbackslash usepackage[inactive]\{fancytooltips\}} - \end{quote} - before \texttt{\textbackslash begin\{document\}} and - \begin{quote}\upshape\color{red} - \texttt{\textbackslash FancyHook} - \end{quote} - after \texttt{\textbackslash begin\{document\}}. - \item In Linux use the script \texttt{fancy-preview} to compile the - presentation again, i.e. if your file is filename.tex run - \begin{quote}\upshape\color{darkgreen} - \texttt{bash fancy-preview filename} - \end{quote} - On Windows use (still experimental) - \begin{quote}\upshape\color{darkgreen} - \texttt{fancypreview.bat filename} - \end{quote} - \item You may want to customize the variables in the script - \texttt{fancy-preview} or batch file - \texttt{fancypreview.bat} (colors, options for fancytooltips, - etc.) - \end{itemize} - \end{frame} - - \begin{frame} - \frametitle{How to create a presentation with dvips} - \begin{itemize} - \item This work-flow should still work with dvips, but has been not - tested, since it - requires Acrobat Professional which is not available on author's - platform (\texttt{Linux}). Moreover, the compilation cannot be - done automatically, due to the post-processing in Acrobat. You - are encouraged to try it by yourselves. Report success of problems - to the authors email, please. - \item Basically follow the instructions for pdf\LaTeX{} users. - \item You have to customize the script \texttt{fancy-preview} - \begin{itemize} - \item Replace \texttt{pdflatex} by \texttt{latex} - \item Add commands which convert \texttt{minimal.ps} into - \texttt{minimal.pdf} - \item Extract the number of pages of the file - \texttt{minimal.pdf} and pass it as an argument to the - fancytooltips package. (You may use \texttt{pdftk} or - \texttt{pdflatex} for this task.) - \end{itemize} - \item Remember that you have post-process the resulting - \texttt{ps} file as described in manual for fancytooltips - package. - \end{itemize} - \end{frame} +% \section{Short howto} +% \begin{frame} +% \frametitle{How to create a presentation with pdf\LaTeX} +% % Creating tooltips is easy. Simply follow these steps. +% \begin{itemize} +% \item Create presentation with your favorit presentation package, +% such as +% \href{http://www.ctan.org/tex-archive/help/Catalogue/entries/acrotex-web.html}{\color{blue}web}, +% \href{http://www.ctan.org/tex-archive/macros/latex/contrib/pdfscreen/}{\color{blue}pdfscreen} +% or +% \href{http://www.ctan.org/tex-archive/help/Catalogue/entries/beamer.html}{\color{blue}beamer}. +% \item In Linux use the script \texttt{fancy-preview} to compile the +% presentation again, i.e. if your file is filename.tex run +% \begin{quote}\upshape\color{darkgreen} +% \texttt{bash fancy-preview filename} +% \end{quote} +% On Windows use (still experimental) +% \begin{quote}\upshape\color{darkgreen} +% \texttt{fancypreview.bat filename} +% \end{quote} +% \item You may want to customize the variables in the script +% \texttt{fancy-preview} or batch file +% \texttt{fancypreview.bat} (colors, options for fancytooltips, +% etc.) +% \end{itemize} +% \end{frame} + +% \begin{frame} +% \frametitle{How to create a presentation with dvips} +% \begin{itemize} +% \item This work-flow should still work with dvips, but has been not +% tested, since it +% requires Acrobat Professional which is not available on author's +% platform (\texttt{Linux}). Moreover, the compilation cannot be +% done automatically, due to the post-processing in Acrobat. You +% are encouraged to try it by yourselves. Report success of problems +% to the authors email, please. +% \item Basically follow the instructions for pdf\LaTeX{} users. +% \item You have to customize the script \texttt{fancy-preview} +% \begin{itemize} +% \item Replace \texttt{pdflatex} by \texttt{latex} +% \item Add commands which convert \texttt{minimal.ps} into +% \texttt{minimal.pdf} +% \item Extract the number of pages of the file +% \texttt{minimal.pdf} and pass it as an argument to the +% fancytooltips package. (You may use \texttt{pdftk} or +% \texttt{pdflatex} for this task.) +% \end{itemize} +% \item Remember that you have post-process the resulting +% \texttt{ps} file as described in manual for fancytooltips +% package. +% \end{itemize} +% \end{frame} \begin{frame} @@ -261,5 +252,27 @@ package. \end{frame} +\begin{thebibliography}{10} +\bibitem{D-1} {K. Nowak}, A remark on \dots , Opuscula Math. {\bf 26} + (2004), 25--31. + +\bibitem{D} {R. Stuchlik}, Perturbations of \dots , + J. Math. Anal. Appl. {\bf 23} (19986), 4--44. + +\bibitem{D-F} {O. Stuchlik}, Half-linear oscillation criteria: + Perturbation in term involving derivative, Nonlinear Anal. {\bf 73} + (2010), 3756--3766. + +\bibitem{D-R} {T. Topas}, Half-linear Differential Equations, + North-Holland Mathematics Studies 202, Elsevier, 2005. + +\bibitem{D-Rez} {K. Ulrich}, Oscillation and nonoscillation of + perturbered half-linear Euler differential equations, + Publ. Math. Debrecen {\bf 1} (2000). + + +\end{thebibliography} + + \end{document} diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview-demo2.pdf b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview-demo2.pdf Binary files differnew file mode 100644 index 00000000000..46f911f1a1a --- /dev/null +++ b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview-demo2.pdf diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/slides.tex b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview-demo2.tex index 1efe048f81c..a756a44090c 100644 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/slides.tex +++ b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview-demo2.tex @@ -13,20 +13,6 @@ \usepackage[latin2]{inputenc} \usepackage[IL2]{fontenc} -\makeatletter -\def\@shadowbox#1{% - \setbox\@fancybox\hbox{\fbox{\color{black}#1}}% - \leavevmode\vcenter{% - \offinterlineskip - \dimen@=\shadowsize - \advance\dimen@ .5\fboxrule - \hbox{\color{mygreen}\copy\@fancybox\kern-.5\fboxrule\lower\shadowsize\hbox{% - \vrule \@height\ht\@fancybox \@depth\dp\@fancybox \@width\dimen@}}% - \vskip-\dimen@ - \moveright\shadowsize\vbox{\color{mygreen}% - \hrule \@width\wd\@fancybox \@height\dimen@}}} - -\makeatother \newtheorem{theorem}{Theorem} \newtheorem{corollary}{Corollary} @@ -58,7 +44,7 @@ width 0.5em height\paperheight\color{black}%\hskip -0.5 em \hskip 0 pt plus 1 fill \raise 1 pt\hbox {\normalfont\tiny \color{gray}\textbf{CDDEA 2010, Rajecké Teplice} (\thepage/12)} \hskip 0 pt plus 1 fill -\raise -2pt\hbox to 0 pt{\hss \includegraphics[width=1.2cm]{LDF.jpg}}}}}% +}}}% \def\qed{} @@ -161,18 +147,14 @@ width 0.5em height\paperheight\color{black}%\hskip -0.5 em \makeatother - \pagestyle{empty}% -\usepackage[inactive]{fancytooltips} - +%\usepackage[inactive]{fancytooltips} \begin{document} -\FancyHook \def\TooltipRefmark{\hbox{\ \ }} \def\TooltipExtratext{\hbox{\ \ }} - \title{Conjugacy criteria for half-linear ODE \\in theory of PDE\\ with generalized $p$-Laplacian\\ and mixed powers\\[15pt]} @@ -184,11 +166,11 @@ width 0.5em height\paperheight\color{black}%\hskip -0.5 em \maketitle \begin{equation} - \shadowbox{$\begin{aligned} + \begin{aligned} \div\left(A(x)\norm{\nabla y}^{p-2}\nabla y\right)&+ \ss{\vec b(x)}{\norm{\nabla y}^{p-2}\nabla y}\\&+ c(x)|y|^{p-2}y+\sum_{i=1}^m c_i(x)|y|^{p_i-2}y=e(x), - \end{aligned}$} + \end{aligned} \tag{E} \end{equation} \begin{itemize} @@ -373,11 +355,11 @@ $ \sum_{i=1}^m\alpha_i\eta_i=1\quad\text{and}\quad \sum_{i=0}^m\eta_i=1$, \kern-2\baselineskip \begin{equation} - \shadowbox{$\begin{aligned} + \begin{aligned} \div\left(A(x)\norm{\nabla y}^{p-2}\nabla y\right)&+ \ss{\vec b(x)}{\norm{\nabla y}^{p-2}\nabla y}\\&+ c(x)|y|^{p-2}y+\sum_{i=1}^m c_i(x)|y|^{p_i-2}y=e(x), - \end{aligned}$} + \end{aligned} \tag{E} \end{equation} @@ -428,11 +410,11 @@ result (for $A(x)=a(\Vert x\Vert )I$, $a(\cdot)$ differentiable). \newpage \begin{equation} - \shadowbox{$\begin{aligned} + \begin{aligned} \div\left(A(x)\norm{\nabla y}^{p-2}\nabla y\right)&+ \ss{\vec b(x)}{\norm{\nabla y}^{p-2}\nabla y}\\&+ \modra{c(x)|y|^{p-2}y}+\cervena{\sum_{i=1}^m c_i(x)|y|^{p_i-2}y}=\cervena{e(x)}, - \end{aligned}$} + \end{aligned} \tag{E} \label{eq:E} \end{equation} @@ -452,13 +434,6 @@ result (for $A(x)=a(\Vert x\Vert )I$, $a(\cdot)$ differentiable). to PDE. \end{itemize} -% % \begin{equation} -% % {\shadowbox{$\div\Bigl(A(x)\Vert\nabla u\Vert^{p-2}\nabla u\Bigr) + \ss{\vec b(x)}{\Vert\nabla u\Vert^{p-2}\nabla u}+c(x)|u|^{p-2}u=0$}} \tag{E} -% % \end{equation} -% \begin{equation} -% {\shadowbox{$\div\Bigl(A(x)\Vert\nabla u\Vert^{p-2}\nabla u\Bigr) + \ss{\vec b(x)}{\Vert\nabla u\Vert^{p-2}\nabla u}+c(x)|u|^{p-2}u=0$}} \tag{E} -% \end{equation} - \newpage diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview/fancy-preview b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview/fancy-preview deleted file mode 100644 index 7fa28f5f20e..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview/fancy-preview +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/bash -# - -FILENAME=$1 - -if [ "$COLOR" == "" ]; then - COLOR="0.8,0.8,0.8"; -fi - -if [ "$PREVIEW" == "" ]; then -PREVIEW="\PreviewEnvironment{definice} \PreviewEnvironment{veta} \PreviewEnvironment{Theorem} \PreviewEnvironment{definition} \PreviewEnvironment{figure} \PreviewEnvironment{theorem} \setlength\PreviewBorder{5pt}"; -fi - -if [ "$FBOXLENGTHS" == "" ]; then - FBOXLENGTHS="\fboxrule=5pt\fboxsep=10pt"; -fi - -if [ "$FANCYOPTIONS" == "" ]; then - FANCYOPTIONS="mouseover,movetips"; -fi - -echo "--------------------------" -echo "------ pdflatex ----------" -echo "--------------------------" -pdflatex $FILENAME.tex -echo "-------------------------------------------" -echo "------ pdflatex with preview.sty ----------" -echo "-------------------------------------------" -pdflatex "\AtBeginDocument{\usepackage[pdftex,active,tightpage,floats,displaymath]{preview} $PREVIEW \definecolor{backgroundcolor}{rgb}{$COLOR}\pagecolor{backgroundcolor}\definecolor{shadethmcolor}{rgb}{$COLOR} \definecolor{shaderulecolor}{rgb}{$COLOR}} \input $FILENAME.tex" - -grep '\\newlabel{' $FILENAME.aux > $FILENAME.tmp -mv $FILENAME.pdf $FILENAME-tmp.pdf - -echo "----------------------------------------------" -echo "------ pdflatex genearting tooltips ----------" -echo "----------------------------------------------" -pdflatex "\documentclass{minimal}\usepackage[papersize={5in,5in},margin=1pt]{geometry}\usepackage[createtips]{fancytooltips}\usepackage{color,graphicx}\begin{document} $FBOXLENGTHS\relax \definecolor{backgroundcolor}{rgb}{$COLOR}\gdef\savemaplabels#1#2#3#4{\xdef\temp{#2}} \def\maplabelstoall#1#2{\savemaplabels#2 \setbox0=\hbox{\colorbox{backgroundcolor}{\includegraphics[page=\temp]{$FILENAME-tmp.pdf}}}\pdfpagewidth=\wd0 \pdfpageheight=\ht0 \advance \pdfpageheight by \dp0 \copy0 \keytip{#1}\newpage} \let\newlabel\maplabelstoall \input $FILENAME.tmp\end{document}" -mv $FILENAME.tips minimal.tip - -echo "----------------------------------------------" -echo "------ pdflatex final compilation 1 ----------" -echo "----------------------------------------------" -pdflatex "\PassOptionsToPackage{active,filename=minimal,$FANCYOPTIONS}{fancytooltips}\input $FILENAME.tex" -echo "----------------------------------------------" -echo "------ pdflatex final compilation 2 ----------" -echo "----------------------------------------------" -pdflatex "\PassOptionsToPackage{active,filename=minimal,$FANCYOPTIONS}{fancytooltips}\input $FILENAME.tex" -echo "----------------------------------------------" -echo "------ pdflatex final compilation 3 ----------" -echo "----------------------------------------------" -pdflatex "\PassOptionsToPackage{active,filename=minimal,$FANCYOPTIONS}{fancytooltips}\input $FILENAME.tex" -echo "----------------------------------------------" -echo "------ pdflatex final compilation 4 ----------" -echo "----------------------------------------------" -pdflatex "\PassOptionsToPackage{active,filename=minimal,$FANCYOPTIONS}{fancytooltips}\input $FILENAME.tex" diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview/fancy-preview-demo.pdf b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview/fancy-preview-demo.pdf Binary files differdeleted file mode 100644 index 66640eef218..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview/fancy-preview-demo.pdf +++ /dev/null diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview/fancypreview.bat b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview/fancypreview.bat deleted file mode 100755 index fd28f80f10c..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview/fancypreview.bat +++ /dev/null @@ -1,46 +0,0 @@ -@echo off - -set FILENAME=%1 - -set COLOR=0.8,0.8,0.8 -set PREVIEW=\PreviewEnvironment{definice} \PreviewEnvironment{veta} \PreviewEnvironment{definition} \PreviewEnvironment{figure} \PreviewEnvironment{theorem} - -set FBOXLENGTHS=\fboxrule=5pt\fboxsep=10pt - -set FANCYOPTIONS=mouseover,movetips - -echo "--------------------------" -echo "------ pdflatex ----------" -echo "--------------------------" -pdflatex %1.tex -echo "-------------------------------------------" -echo "------ pdflatex with preview.sty ----------" -echo "-------------------------------------------" -pdflatex "\AtBeginDocument{\usepackage[pdftex,active,tightpage,floats,displaymath]{preview} %PREVIEW% \definecolor{backgroundcolor}{rgb}{%COLOR%}\pagecolor{backgroundcolor}\definecolor{shadethmcolor}{rgb}{%COLOR%} \definecolor{shaderulecolor}{rgb}{%COLOR%}} \input %1.tex" - - -findstr /b "\newlabel" %1.aux > %1.tmp -copy %1.pdf %1-tmp.pdf - -echo "----------------------------------------------" -echo "------ pdflatex genearting tooltips ----------" -echo "----------------------------------------------" -pdflatex "\documentclass{minimal}\usepackage[papersize={5in,5in},margin=1pt]{geometry}\usepackage[createtips]{fancytooltips}\usepackage{color,graphicx}\begin{document} %FBOXLENGTHS%\relax \definecolor{backgroundcolor}{rgb}{%COLOR%}\gdef\savemaplabels#1#2#3#4{\xdef\temp{#2}} \def\maplabelstoall#1#2{\savemaplabels#2 \setbox0=\hbox{\colorbox{backgroundcolor}{\includegraphics[page=\temp]{%1-tmp.pdf}}}\pdfpagewidth=\wd0 \pdfpageheight=\ht0 \advance \pdfpageheight by \dp0 \copy0 \keytip{#1}\newpage} \let\newlabel\maplabelstoall \input %1.tmp\end{document}" - -echo "----------------------------------------------" -echo "------ pdflatex final compilation 1 ----------" -echo "----------------------------------------------" -pdflatex "\PassOptionsToPackage{active,filename=minimal,%FANCYOPTIONS%}{fancytooltips}\input %1.tex" -echo "----------------------------------------------" -echo "------ pdflatex final compilation 2 ----------" -echo "----------------------------------------------" -pdflatex "\PassOptionsToPackage{active,filename=minimal,%FANCYOPTIONS%}{fancytooltips}\input %1.tex" -echo "----------------------------------------------" -echo "------ pdflatex final compilation 3 ----------" -echo "----------------------------------------------" -pdflatex "\PassOptionsToPackage{active,filename=minimal,%FANCYOPTIONS%}{fancytooltips}\input %1.tex" -echo "----------------------------------------------" -echo "------ pdflatex final compilation 4 ----------" -echo "----------------------------------------------" -pdflatex "\PassOptionsToPackage{active,filename=minimal,%FANCYOPTIONS%}{fancytooltips}\input %1.tex" - diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/LDF.jpg b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/LDF.jpg Binary files differdeleted file mode 100644 index b0cb5963ba6..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/LDF.jpg +++ /dev/null diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/README b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/README deleted file mode 100644 index 467c7fd0fdc..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/README +++ /dev/null @@ -1,21 +0,0 @@ -Run the script compile.sh to compile the presentation. - -You get the file slides.pdf with my talk from the conferrence -CDDE in Rajecke Teplice 2010. The file includes invisible buttons -which follow some links to numbered equations or theorem-like -environments. More preciselly: if the link points to an object which -is not present on the current page, then moving the cursor behind the -link opens the preview of the theorem or equation. Clicking the link -jumps to the page with this object, as usual. - -The important lines from slides.tex which are used to get this behavior are -\usepackage[inactive]{fancytooltips} before \begin{document} and -\FancyHook \def\TooltipRefmark{\hbox{\ \ }} \def\TooltipExtratext{\hbox{\ \ }} -after \begin{document}. - -You get also the file marik.pdf -- a version of the presentation which does -not have extra features, use as a solution if the main file with the -presentation behaves wrong on the PC which is used for presentation -(JavaScript capable browser is necessary). - - diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/complie.sh b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/complie.sh deleted file mode 100644 index ccb09e965d2..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/complie.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -# - -COLOR="1,1,0.5" - -pdflatex slides -pdflatex slides -cp slides.pdf marik.pdf - -source fancy-preview slides - - -#pdflatex "\AtBeginDocument{\usepackage{pdfpages}}\AtEndDocument{\includepdf[pages=1-12,nup=4x3, delta = 6 10]{a.pdf}}\PassOptionsToPackage{active,filename=minimal,$FANCYOPTIONS}{fancytooltips}\input $FILENAME.tex" - -pdflatex "\AtBeginDocument{\usepackage{pdfpages}}\AtEndDocument{\newpage \AddToShipoutPicture{\hbox to 0 pt{\hbox to \paperwidth{\color{mygreen}\vrule width \paperwidth height\paperheight}}}\null\bigskip\bigskip\lineskip 12 pt\parindent 0 pt \input multido.tex \multido{\i=1+1}{12}{\leavevmode\href{\jobname.pdf\#page.\i}{\fboxsep=0pt\colorbox{white}{\includegraphics[width=0.23\hsize,page=\i]{marik.pdf}}}\hfill\penalty 0}}\PassOptionsToPackage{active,filename=minimal,$FANCYOPTIONS}{fancytooltips}\input $FILENAME.tex" - -#cp slides.pdf marik-slides.pdf
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/fancy-preview b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/fancy-preview deleted file mode 100644 index 7fa28f5f20e..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/fancy-preview +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/bash -# - -FILENAME=$1 - -if [ "$COLOR" == "" ]; then - COLOR="0.8,0.8,0.8"; -fi - -if [ "$PREVIEW" == "" ]; then -PREVIEW="\PreviewEnvironment{definice} \PreviewEnvironment{veta} \PreviewEnvironment{Theorem} \PreviewEnvironment{definition} \PreviewEnvironment{figure} \PreviewEnvironment{theorem} \setlength\PreviewBorder{5pt}"; -fi - -if [ "$FBOXLENGTHS" == "" ]; then - FBOXLENGTHS="\fboxrule=5pt\fboxsep=10pt"; -fi - -if [ "$FANCYOPTIONS" == "" ]; then - FANCYOPTIONS="mouseover,movetips"; -fi - -echo "--------------------------" -echo "------ pdflatex ----------" -echo "--------------------------" -pdflatex $FILENAME.tex -echo "-------------------------------------------" -echo "------ pdflatex with preview.sty ----------" -echo "-------------------------------------------" -pdflatex "\AtBeginDocument{\usepackage[pdftex,active,tightpage,floats,displaymath]{preview} $PREVIEW \definecolor{backgroundcolor}{rgb}{$COLOR}\pagecolor{backgroundcolor}\definecolor{shadethmcolor}{rgb}{$COLOR} \definecolor{shaderulecolor}{rgb}{$COLOR}} \input $FILENAME.tex" - -grep '\\newlabel{' $FILENAME.aux > $FILENAME.tmp -mv $FILENAME.pdf $FILENAME-tmp.pdf - -echo "----------------------------------------------" -echo "------ pdflatex genearting tooltips ----------" -echo "----------------------------------------------" -pdflatex "\documentclass{minimal}\usepackage[papersize={5in,5in},margin=1pt]{geometry}\usepackage[createtips]{fancytooltips}\usepackage{color,graphicx}\begin{document} $FBOXLENGTHS\relax \definecolor{backgroundcolor}{rgb}{$COLOR}\gdef\savemaplabels#1#2#3#4{\xdef\temp{#2}} \def\maplabelstoall#1#2{\savemaplabels#2 \setbox0=\hbox{\colorbox{backgroundcolor}{\includegraphics[page=\temp]{$FILENAME-tmp.pdf}}}\pdfpagewidth=\wd0 \pdfpageheight=\ht0 \advance \pdfpageheight by \dp0 \copy0 \keytip{#1}\newpage} \let\newlabel\maplabelstoall \input $FILENAME.tmp\end{document}" -mv $FILENAME.tips minimal.tip - -echo "----------------------------------------------" -echo "------ pdflatex final compilation 1 ----------" -echo "----------------------------------------------" -pdflatex "\PassOptionsToPackage{active,filename=minimal,$FANCYOPTIONS}{fancytooltips}\input $FILENAME.tex" -echo "----------------------------------------------" -echo "------ pdflatex final compilation 2 ----------" -echo "----------------------------------------------" -pdflatex "\PassOptionsToPackage{active,filename=minimal,$FANCYOPTIONS}{fancytooltips}\input $FILENAME.tex" -echo "----------------------------------------------" -echo "------ pdflatex final compilation 3 ----------" -echo "----------------------------------------------" -pdflatex "\PassOptionsToPackage{active,filename=minimal,$FANCYOPTIONS}{fancytooltips}\input $FILENAME.tex" -echo "----------------------------------------------" -echo "------ pdflatex final compilation 4 ----------" -echo "----------------------------------------------" -pdflatex "\PassOptionsToPackage{active,filename=minimal,$FANCYOPTIONS}{fancytooltips}\input $FILENAME.tex" diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/marik.pdf b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/marik.pdf Binary files differdeleted file mode 100644 index 68173ab4216..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/marik.pdf +++ /dev/null diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/slides.pdf b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/slides.pdf Binary files differdeleted file mode 100644 index 00ee4fbf751..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancy-preview2/slides.pdf +++ /dev/null diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-dvips.pdf b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-dvips.pdf Binary files differdeleted file mode 100644 index 9297d5016ec..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-dvips.pdf +++ /dev/null diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-dvips.tex b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-dvips.tex deleted file mode 100644 index 0118a55c2c6..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-dvips.tex +++ /dev/null @@ -1,66 +0,0 @@ -\documentclass{article} - -\usepackage{color} -\usepackage[dvips,designiii]{web} -\usepackage[display]{texpower} -\let\pdfsavepos\undefined -\usepackage[dvips,filename=tooltipy,movetips,pages=28]{fancytooltips} - -\let\rmdefault\sfdefault - -\usepackage{amsmath} -\usepackage[shadein]{shadethm} - -\newshadetheorem{definice}{Definition} - -\usepackage{graphicx} - -\definecolor{bkg}{rgb}{1,0.9,0.9} -\def\Message#1{\colorbox{bkg}{ - \begin{minipage}{1\linewidth} - \smallskip - #1 - \smallskip - \end{minipage} - }} -\begin{document} - - -\parindent 0 pt - -\Message{ -\begin{itemize} -\item Use Acrobat Reader or Adobe Acrobat and View--Page - Layout--Single page to view this file, please. -\item The blue text is active button. If you \textbf{click} one of - these buttons, tooltip appears. If you move your mouse out or if you - close the page, the tooltip disappears. -\item The first links are tooltips, the fifth one is animated tooltip. -\item The tooltips appears with the left down corner at the mouse - cursor, or at least as close as possible. Click on different - positions of the same button and have a fun. -\end{itemize} -} - -\begin{definice} - This is definition of \tooltip{rank}{2}. bla bla bla. -\end{definice} - -\begin{definice} - This is \tooltip{definition}3 of \tooltip{derivative}{1}\hfill - \tooltip{derivative}{1}. -\end{definice} - -\pause -This is a geometric \tooltipanim{idea}{4}{28} which is behind the -definition of derivative. - - -\pause -\vfill -\begin{definice} - This is \tooltip{definition}3 of \tooltip{derivative}{1}\hfill - \tooltip{derivative}{1}. -\end{definice} - -\end{document} diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-min-dvips.pdf b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-min-dvips.pdf Binary files differdeleted file mode 100644 index c1cf1e47ac1..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-min-dvips.pdf +++ /dev/null diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-min-dvips.tex b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-min-dvips.tex deleted file mode 100644 index 7d11af3b2f0..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-min-dvips.tex +++ /dev/null @@ -1,34 +0,0 @@ -\documentclass{article} - -\usepackage[a5paper]{geometry} - -\usepackage{color} -\usepackage[filename=tooltipy,dvips,pages=28,movetips,mouseover,debug]{fancytooltips} - -\begin{document} - -\parindent 0 pt - -\begin{itemize} -\item The blue text is active button. If you move your mouse over this - button, tooltip appears. Is you move your mouse out or if you close - the page, the tooltip disappears. -\item The first links are tooltips, the third one is animated tooltip. - have a fun -\end{itemize} - - This is definition of \tooltip{rank}{2}. - - - This is definition of \tooltip{derivative}{1}. - -This is a geometric \tooltipanim{idea}{4}{28} which is behind the -definition of derivative. - - -\newpage -page 2 - -This is once more definition of \tooltip{rank}{2}. - -\end{document} diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-min.pdf b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-min.pdf Binary files differdeleted file mode 100644 index 553c9497a70..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-min.pdf +++ /dev/null diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-min.tex b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-min.tex deleted file mode 100644 index e214c02796a..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example-min.tex +++ /dev/null @@ -1,34 +0,0 @@ -\documentclass{article} - -\usepackage[a5paper,landscape]{geometry} - -\usepackage{color} -\usepackage[filename=tooltipy,movetips,mouseover]{fancytooltips} - -\begin{document} - -\parindent 0 pt - -\begin{itemize} -\item The blue text is active button. If you move your mouse to this button, - tooltip appears. Is you move your mouse out or if you close the - page, the tooltip disappears. -\item The first links are tooltips, the third one is animated tooltip. - have a fun -\end{itemize} - - This is definition of \tooltip{rank}{2}. - - - This is definition of \tooltip{derivative}{1}. - -This is a geometric \tooltipanim{idea}{4}{28} which is behind the -definition of derivative. - - -\newpage -page 2 - -Another \tooltip{one}{22}. - -\end{document} diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example.pdf b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example.pdf Binary files differindex 13d1cd00be3..8413b6fc277 100644 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example.pdf +++ b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example.pdf diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example.tex b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example.tex index 54803a48643..292f6cbf3e3 100644 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example.tex +++ b/Master/texmf-dist/doc/latex/fancytooltips/examples/fancytooltips-example.tex @@ -1,17 +1,14 @@ \documentclass{article} - -\usepackage[display]{texpower} \usepackage[pdftex,designiii]{web} -\usepackage[filename=tooltipy,movetips,mouseover,blur]{fancytooltips} +\usepackage[filename=tooltipy,movetips,mouseover]{fancytooltips} \let\rmdefault\sfdefault -%\usepackage{amsmath} \usepackage[shadein]{shadethm} -\newshadetheorem{definice}{Definition} +\newshadetheorem{definition}{Definition} \usepackage{graphicx} @@ -30,37 +27,29 @@ \Message{ \begin{itemize} -\item Use Acrobat Reader or Adobe Acrobat and View--Page - Layout--Single page to view this file, please. -\item The blue text is active button. If you \textbf{click} one of +\item Use Acrobat Reader or Adobe Acrobat to view this file, please. +\item The blue texts are covered by an active button. If you \textbf{move mouse over} one of these buttons, tooltip appears. If you move your mouse out or if you close the page, the tooltip disappears. \item The first links are tooltips, the fifth one is animated tooltip. \item The tooltips appears with the left down corner at the mouse - cursor, or at least as close as possible. Click on different - positions of the same button and have a fun. + cursor, or at least as close as possible. \end{itemize} } -\begin{definice} - This is definition of \tooltip{rank}{2}. bla bla bla. -\end{definice} +\begin{definition} + This is definition of \tooltip{rank}{2}. +\end{definition} + -\pause -\begin{definice} - This is \tooltip{definition}3 of \tooltip{derivative}{1}\hfill +\begin{definition} + This is \tooltip{definition}3 of \tooltip{derivative}{1}. Filler + text. Filler text. Filler text. Filler text. Filler text. Filler text. Filler text. Filler text. Filler text. Filler text. \tooltip{derivative}{1}. -\end{definice} +\end{definition} -\pause -This is a geometric \tooltipanim*{idea}{4}{28} which is behind the -definition of derivative. +This is a geometric \tooltipanim{idea}{4}{28} which is behind the +definition of derivative. -\pause -\vfill -\begin{definice} - This is \tooltip{definition}3 of \tooltip{derivative}{1}\hfill - \tooltip{derivative}{1}. -\end{definice} \end{document} diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tecna2.pdf b/Master/texmf-dist/doc/latex/fancytooltips/examples/pics/tecna2.pdf Binary files differindex b4f69baa0f8..b4f69baa0f8 100644 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tecna2.pdf +++ b/Master/texmf-dist/doc/latex/fancytooltips/examples/pics/tecna2.pdf diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tooltipy.pdf b/Master/texmf-dist/doc/latex/fancytooltips/examples/pics/tooltipy.pdf Binary files differindex 38dff9a25f3..ba14c364dc3 100644 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tooltipy.pdf +++ b/Master/texmf-dist/doc/latex/fancytooltips/examples/pics/tooltipy.pdf diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tooltipy.tex b/Master/texmf-dist/doc/latex/fancytooltips/examples/pics/tooltipy.tex index 3900839282e..3900839282e 100644 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tooltipy.tex +++ b/Master/texmf-dist/doc/latex/fancytooltips/examples/pics/tooltipy.tex diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tooltipy.tips b/Master/texmf-dist/doc/latex/fancytooltips/examples/pics/tooltipy.tips index d0f37ddb0e7..d0f37ddb0e7 100644 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tooltipy.tips +++ b/Master/texmf-dist/doc/latex/fancytooltips/examples/pics/tooltipy.tips diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/readme b/Master/texmf-dist/doc/latex/fancytooltips/examples/readme new file mode 100644 index 00000000000..7054e948d67 --- /dev/null +++ b/Master/texmf-dist/doc/latex/fancytooltips/examples/readme @@ -0,0 +1,5 @@ +Compile the examples as follows + +pdflatex fancytooltips-example.tex (2 times) +fancy-preview fancy-preview-demo --tooltips=pics/tooltipy --fancy_options=preview +fancy-preview fancy-preview-demo2
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/images/ttp-1.jpg b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/images/ttp-1.jpg Binary files differdeleted file mode 100644 index c75c302c075..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/images/ttp-1.jpg +++ /dev/null diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/logo.pdf b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/logo.pdf Binary files differdeleted file mode 100644 index c733a9dd7a7..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/logo.pdf +++ /dev/null diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib.js b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib.js deleted file mode 100644 index b0ca8ac04ca..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib.js +++ /dev/null @@ -1,1491 +0,0 @@ -//\///// -//\ overLIB 4.21 - You may not remove or change this notice. -//\ Copyright Erik Bosrup 1998-2004. All rights reserved. -//\ -//\ Contributors are listed on the homepage. -//\ This file might be old, always check for the latest version at: -//\ http://www.bosrup.com/web/overlib/ -//\ -//\ Please read the license agreement (available through the link above) -//\ before using overLIB. Direct any licensing questions to erik@bosrup.com. -//\ -//\ Do not sell this as your own work or remove this copyright notice. -//\ For full details on copying or changing this script please read the -//\ license agreement at the link above. Please give credit on sites that -//\ use overLIB and submit changes of the script so other people can use -//\ them as well. -// $Revision: 1.119 $ $Date: 2005/07/02 23:41:44 $ -//\///// -//\mini - -//////// -// PRE-INIT -// Ignore these lines, configuration is below. -//////// -var olLoaded = 0;var pmStart = 10000000; var pmUpper = 10001000; var pmCount = pmStart+1; var pmt=''; var pms = new Array(); var olInfo = new Info('4.21', 1); -var FREPLACE = 0; var FBEFORE = 1; var FAFTER = 2; var FALTERNATE = 3; var FCHAIN=4; -var olHideForm=0; // parameter for hiding SELECT and ActiveX elements in IE5.5+ -var olHautoFlag = 0; // flags for over-riding VAUTO and HAUTO if corresponding -var olVautoFlag = 0; // positioning commands are used on the command line -var hookPts = new Array(), postParse = new Array(), cmdLine = new Array(), runTime = new Array(); -// for plugins -registerCommands('donothing,inarray,caparray,sticky,background,noclose,caption,left,right,center,offsetx,offsety,fgcolor,bgcolor,textcolor,capcolor,closecolor,width,border,cellpad,status,autostatus,autostatuscap,height,closetext,snapx,snapy,fixx,fixy,relx,rely,fgbackground,bgbackground,padx,pady,fullhtml,above,below,capicon,textfont,captionfont,closefont,textsize,captionsize,closesize,timeout,function,delay,hauto,vauto,closeclick,wrap,followmouse,mouseoff,closetitle,cssoff,compatmode,cssclass,fgclass,bgclass,textfontclass,captionfontclass,closefontclass'); - -//////// -// DEFAULT CONFIGURATION -// Settings you want everywhere are set here. All of this can also be -// changed on your html page or through an overLIB call. -//////// -if (typeof ol_fgcolor=='undefined') var ol_fgcolor="#CCCCFF"; -if (typeof ol_bgcolor=='undefined') var ol_bgcolor="#333399"; -if (typeof ol_textcolor=='undefined') var ol_textcolor="#000000"; -if (typeof ol_capcolor=='undefined') var ol_capcolor="#FFFFFF"; -if (typeof ol_closecolor=='undefined') var ol_closecolor="#9999FF"; -if (typeof ol_textfont=='undefined') var ol_textfont="Verdana,Arial,Helvetica"; -if (typeof ol_captionfont=='undefined') var ol_captionfont="Verdana,Arial,Helvetica"; -if (typeof ol_closefont=='undefined') var ol_closefont="Verdana,Arial,Helvetica"; -if (typeof ol_textsize=='undefined') var ol_textsize="1"; -if (typeof ol_captionsize=='undefined') var ol_captionsize="1"; -if (typeof ol_closesize=='undefined') var ol_closesize="1"; -if (typeof ol_width=='undefined') var ol_width="200"; -if (typeof ol_border=='undefined') var ol_border="1"; -if (typeof ol_cellpad=='undefined') var ol_cellpad=2; -if (typeof ol_offsetx=='undefined') var ol_offsetx=10; -if (typeof ol_offsety=='undefined') var ol_offsety=10; -if (typeof ol_text=='undefined') var ol_text="Default Text"; -if (typeof ol_cap=='undefined') var ol_cap=""; -if (typeof ol_sticky=='undefined') var ol_sticky=0; -if (typeof ol_background=='undefined') var ol_background=""; -if (typeof ol_close=='undefined') var ol_close="Close"; -if (typeof ol_hpos=='undefined') var ol_hpos=RIGHT; -if (typeof ol_status=='undefined') var ol_status=""; -if (typeof ol_autostatus=='undefined') var ol_autostatus=0; -if (typeof ol_height=='undefined') var ol_height=-1; -if (typeof ol_snapx=='undefined') var ol_snapx=0; -if (typeof ol_snapy=='undefined') var ol_snapy=0; -if (typeof ol_fixx=='undefined') var ol_fixx=-1; -if (typeof ol_fixy=='undefined') var ol_fixy=-1; -if (typeof ol_relx=='undefined') var ol_relx=null; -if (typeof ol_rely=='undefined') var ol_rely=null; -if (typeof ol_fgbackground=='undefined') var ol_fgbackground=""; -if (typeof ol_bgbackground=='undefined') var ol_bgbackground=""; -if (typeof ol_padxl=='undefined') var ol_padxl=1; -if (typeof ol_padxr=='undefined') var ol_padxr=1; -if (typeof ol_padyt=='undefined') var ol_padyt=1; -if (typeof ol_padyb=='undefined') var ol_padyb=1; -if (typeof ol_fullhtml=='undefined') var ol_fullhtml=0; -if (typeof ol_vpos=='undefined') var ol_vpos=BELOW; -if (typeof ol_aboveheight=='undefined') var ol_aboveheight=0; -if (typeof ol_capicon=='undefined') var ol_capicon=""; -if (typeof ol_frame=='undefined') var ol_frame=self; -if (typeof ol_timeout=='undefined') var ol_timeout=0; -if (typeof ol_function=='undefined') var ol_function=null; -if (typeof ol_delay=='undefined') var ol_delay=0; -if (typeof ol_hauto=='undefined') var ol_hauto=0; -if (typeof ol_vauto=='undefined') var ol_vauto=0; -if (typeof ol_closeclick=='undefined') var ol_closeclick=0; -if (typeof ol_wrap=='undefined') var ol_wrap=0; -if (typeof ol_followmouse=='undefined') var ol_followmouse=1; -if (typeof ol_mouseoff=='undefined') var ol_mouseoff=0; -if (typeof ol_closetitle=='undefined') var ol_closetitle='Close'; -if (typeof ol_compatmode=='undefined') var ol_compatmode=0; -if (typeof ol_css=='undefined') var ol_css=CSSOFF; -if (typeof ol_fgclass=='undefined') var ol_fgclass=""; -if (typeof ol_bgclass=='undefined') var ol_bgclass=""; -if (typeof ol_textfontclass=='undefined') var ol_textfontclass=""; -if (typeof ol_captionfontclass=='undefined') var ol_captionfontclass=""; -if (typeof ol_closefontclass=='undefined') var ol_closefontclass=""; - -//////// -// ARRAY CONFIGURATION -//////// - -// You can use these arrays to store popup text here instead of in the html. -if (typeof ol_texts=='undefined') var ol_texts = new Array("Text 0", "Text 1"); -if (typeof ol_caps=='undefined') var ol_caps = new Array("Caption 0", "Caption 1"); - -//////// -// END OF CONFIGURATION -// Don't change anything below this line, all configuration is above. -//////// - - - - - -//////// -// INIT -//////// -// Runtime variables init. Don't change for config! -var o3_text=""; -var o3_cap=""; -var o3_sticky=0; -var o3_background=""; -var o3_close="Close"; -var o3_hpos=RIGHT; -var o3_offsetx=2; -var o3_offsety=2; -var o3_fgcolor=""; -var o3_bgcolor=""; -var o3_textcolor=""; -var o3_capcolor=""; -var o3_closecolor=""; -var o3_width=100; -var o3_border=1; -var o3_cellpad=2; -var o3_status=""; -var o3_autostatus=0; -var o3_height=-1; -var o3_snapx=0; -var o3_snapy=0; -var o3_fixx=-1; -var o3_fixy=-1; -var o3_relx=null; -var o3_rely=null; -var o3_fgbackground=""; -var o3_bgbackground=""; -var o3_padxl=0; -var o3_padxr=0; -var o3_padyt=0; -var o3_padyb=0; -var o3_fullhtml=0; -var o3_vpos=BELOW; -var o3_aboveheight=0; -var o3_capicon=""; -var o3_textfont="Verdana,Arial,Helvetica"; -var o3_captionfont="Verdana,Arial,Helvetica"; -var o3_closefont="Verdana,Arial,Helvetica"; -var o3_textsize="1"; -var o3_captionsize="1"; -var o3_closesize="1"; -var o3_frame=self; -var o3_timeout=0; -var o3_timerid=0; -var o3_allowmove=0; -var o3_function=null; -var o3_delay=0; -var o3_delayid=0; -var o3_hauto=0; -var o3_vauto=0; -var o3_closeclick=0; -var o3_wrap=0; -var o3_followmouse=1; -var o3_mouseoff=0; -var o3_closetitle=''; -var o3_compatmode=0; -var o3_css=CSSOFF; -var o3_fgclass=""; -var o3_bgclass=""; -var o3_textfontclass=""; -var o3_captionfontclass=""; -var o3_closefontclass=""; - -// Display state variables -var o3_x = 0; -var o3_y = 0; -var o3_showingsticky = 0; -var o3_removecounter = 0; - -// Our layer -var over = null; -var fnRef, hoveringSwitch = false; -var olHideDelay; - -// Decide browser version -var isMac = (navigator.userAgent.indexOf("Mac") != -1); -var olOp = (navigator.userAgent.toLowerCase().indexOf('opera') > -1 && document.createTextNode); // Opera 7 -var olNs4 = (navigator.appName=='Netscape' && parseInt(navigator.appVersion) == 4); -var olNs6 = (document.getElementById) ? true : false; -var olKq = (olNs6 && /konqueror/i.test(navigator.userAgent)); -var olIe4 = (document.all) ? true : false; -var olIe5 = false; -var olIe55 = false; // Added additional variable to identify IE5.5+ -var docRoot = 'document.body'; - -// Resize fix for NS4.x to keep track of layer -if (olNs4) { - var oW = window.innerWidth; - var oH = window.innerHeight; - window.onresize = function() { if (oW != window.innerWidth || oH != window.innerHeight) location.reload(); } -} - -// Microsoft Stupidity Check(tm). -if (olIe4) { - var agent = navigator.userAgent; - if (/MSIE/.test(agent)) { - var versNum = parseFloat(agent.match(/MSIE[ ](\d\.\d+)\.*/i)[1]); - if (versNum >= 5){ - olIe5=true; - olIe55=(versNum>=5.5&&!olOp) ? true : false; - if (olNs6) olNs6=false; - } - } - if (olNs6) olIe4 = false; -} - -// Check for compatability mode. -if (document.compatMode && document.compatMode == 'CSS1Compat') { - docRoot= ((olIe4 && !olOp) ? 'document.documentElement' : docRoot); -} - -// Add window onload handlers to indicate when all modules have been loaded -// For Netscape 6+ and Mozilla, uses addEventListener method on the window object -// For IE it uses the attachEvent method of the window object and for Netscape 4.x -// it sets the window.onload handler to the OLonload_handler function for Bubbling -if(window.addEventListener) window.addEventListener("load",OLonLoad_handler,false); -else if (window.attachEvent) window.attachEvent("onload",OLonLoad_handler); - -var capExtent; - -//////// -// PUBLIC FUNCTIONS -//////// - -// overlib(arg0,...,argN) -// Loads parameters into global runtime variables. -function overlib() { - if (!olLoaded || isExclusive(overlib.arguments)) return true; - if (olCheckMouseCapture) olMouseCapture(); - if (over) { - over = (typeof over.id != 'string') ? o3_frame.document.all['overDiv'] : over; - cClick(); - } - - // Load defaults to runtime. - olHideDelay=0; - o3_text=ol_text; - o3_cap=ol_cap; - o3_sticky=ol_sticky; - o3_background=ol_background; - o3_close=ol_close; - o3_hpos=ol_hpos; - o3_offsetx=ol_offsetx; - o3_offsety=ol_offsety; - o3_fgcolor=ol_fgcolor; - o3_bgcolor=ol_bgcolor; - o3_textcolor=ol_textcolor; - o3_capcolor=ol_capcolor; - o3_closecolor=ol_closecolor; - o3_width=ol_width; - o3_border=ol_border; - o3_cellpad=ol_cellpad; - o3_status=ol_status; - o3_autostatus=ol_autostatus; - o3_height=ol_height; - o3_snapx=ol_snapx; - o3_snapy=ol_snapy; - o3_fixx=ol_fixx; - o3_fixy=ol_fixy; - o3_relx=ol_relx; - o3_rely=ol_rely; - o3_fgbackground=ol_fgbackground; - o3_bgbackground=ol_bgbackground; - o3_padxl=ol_padxl; - o3_padxr=ol_padxr; - o3_padyt=ol_padyt; - o3_padyb=ol_padyb; - o3_fullhtml=ol_fullhtml; - o3_vpos=ol_vpos; - o3_aboveheight=ol_aboveheight; - o3_capicon=ol_capicon; - o3_textfont=ol_textfont; - o3_captionfont=ol_captionfont; - o3_closefont=ol_closefont; - o3_textsize=ol_textsize; - o3_captionsize=ol_captionsize; - o3_closesize=ol_closesize; - o3_timeout=ol_timeout; - o3_function=ol_function; - o3_delay=ol_delay; - o3_hauto=ol_hauto; - o3_vauto=ol_vauto; - o3_closeclick=ol_closeclick; - o3_wrap=ol_wrap; - o3_followmouse=ol_followmouse; - o3_mouseoff=ol_mouseoff; - o3_closetitle=ol_closetitle; - o3_css=ol_css; - o3_compatmode=ol_compatmode; - o3_fgclass=ol_fgclass; - o3_bgclass=ol_bgclass; - o3_textfontclass=ol_textfontclass; - o3_captionfontclass=ol_captionfontclass; - o3_closefontclass=ol_closefontclass; - - setRunTimeVariables(); - - fnRef = ''; - - // Special for frame support, over must be reset... - o3_frame = ol_frame; - - if(!(over=createDivContainer())) return false; - - parseTokens('o3_', overlib.arguments); - if (!postParseChecks()) return false; - - if (o3_delay == 0) { - return runHook("olMain", FREPLACE); - } else { - o3_delayid = setTimeout("runHook('olMain', FREPLACE)", o3_delay); - return false; - } -} - -// Clears popups if appropriate -function nd(time) { - if (olLoaded && !isExclusive()) { - hideDelay(time); // delay popup close if time specified - - if (o3_removecounter >= 1) { o3_showingsticky = 0 }; - - if (o3_showingsticky == 0) { - o3_allowmove = 0; - if (over != null && o3_timerid == 0) runHook("hideObject", FREPLACE, over); - } else { - o3_removecounter++; - } - } - - return true; -} - -// The Close onMouseOver function for stickies -function cClick() { - if (olLoaded) { - runHook("hideObject", FREPLACE, over); - o3_showingsticky = 0; - } - return false; -} - -// Method for setting page specific defaults. -function overlib_pagedefaults() { - parseTokens('ol_', overlib_pagedefaults.arguments); -} - - -//////// -// OVERLIB MAIN FUNCTION -//////// - -// This function decides what it is we want to display and how we want it done. -function olMain() { - var layerhtml, styleType; - runHook("olMain", FBEFORE); - - if (o3_background!="" || o3_fullhtml) { - // Use background instead of box. - layerhtml = runHook('ol_content_background', FALTERNATE, o3_css, o3_text, o3_background, o3_fullhtml); - } else { - // They want a popup box. - styleType = (pms[o3_css-1-pmStart] == "cssoff" || pms[o3_css-1-pmStart] == "cssclass"); - - // Prepare popup background - if (o3_fgbackground != "") o3_fgbackground = "background=\""+o3_fgbackground+"\""; - if (o3_bgbackground != "") o3_bgbackground = (styleType ? "background=\""+o3_bgbackground+"\"" : o3_bgbackground); - - // Prepare popup colors - if (o3_fgcolor != "") o3_fgcolor = (styleType ? "bgcolor=\""+o3_fgcolor+"\"" : o3_fgcolor); - if (o3_bgcolor != "") o3_bgcolor = (styleType ? "bgcolor=\""+o3_bgcolor+"\"" : o3_bgcolor); - - // Prepare popup height - if (o3_height > 0) o3_height = (styleType ? "height=\""+o3_height+"\"" : o3_height); - else o3_height = ""; - - // Decide which kinda box. - if (o3_cap=="") { - // Plain - layerhtml = runHook('ol_content_simple', FALTERNATE, o3_css, o3_text); - } else { - // With caption - if (o3_sticky) { - // Show close text - layerhtml = runHook('ol_content_caption', FALTERNATE, o3_css, o3_text, o3_cap, o3_close); - } else { - // No close text - layerhtml = runHook('ol_content_caption', FALTERNATE, o3_css, o3_text, o3_cap, ""); - } - } - } - - // We want it to stick! - if (o3_sticky) { - if (o3_timerid > 0) { - clearTimeout(o3_timerid); - o3_timerid = 0; - } - o3_showingsticky = 1; - o3_removecounter = 0; - } - - // Created a separate routine to generate the popup to make it easier - // to implement a plugin capability - if (!runHook("createPopup", FREPLACE, layerhtml)) return false; - - // Prepare status bar - if (o3_autostatus > 0) { - o3_status = o3_text; - if (o3_autostatus > 1) o3_status = o3_cap; - } - - // When placing the layer the first time, even stickies may be moved. - o3_allowmove = 0; - - // Initiate a timer for timeout - if (o3_timeout > 0) { - if (o3_timerid > 0) clearTimeout(o3_timerid); - o3_timerid = setTimeout("cClick()", o3_timeout); - } - - // Show layer - runHook("disp", FREPLACE, o3_status); - runHook("olMain", FAFTER); - - return (olOp && event && event.type == 'mouseover' && !o3_status) ? '' : (o3_status != ''); -} - -//////// -// LAYER GENERATION FUNCTIONS -//////// -// These functions just handle popup content with tags that should adhere to the W3C standards specification. - -// Makes simple table without caption -function ol_content_simple(text) { - var cpIsMultiple = /,/.test(o3_cellpad); - var txt = '<table width="'+o3_width+ '" border="0" cellpadding="'+o3_border+'" cellspacing="0" '+(o3_bgclass ? 'class="'+o3_bgclass+'"' : o3_bgcolor+' '+o3_height)+'><tr><td><table width="100%" border="0" '+((olNs4||!cpIsMultiple) ? 'cellpadding="'+o3_cellpad+'" ' : '')+'cellspacing="0" '+(o3_fgclass ? 'class="'+o3_fgclass+'"' : o3_fgcolor+' '+o3_fgbackground+' '+o3_height)+'><tr><td valign="TOP"'+(o3_textfontclass ? ' class="'+o3_textfontclass+'">' : ((!olNs4&&cpIsMultiple) ? ' style="'+setCellPadStr(o3_cellpad)+'">' : '>'))+(o3_textfontclass ? '' : wrapStr(0,o3_textsize,'text'))+text+(o3_textfontclass ? '' : wrapStr(1,o3_textsize))+'</td></tr></table></td></tr></table>'; - - set_background(""); - return txt; -} - -// Makes table with caption and optional close link -function ol_content_caption(text,title,close) { - var nameId, txt, cpIsMultiple = /,/.test(o3_cellpad); - var closing, closeevent; - - closing = ""; - closeevent = "onmouseover"; - if (o3_closeclick == 1) closeevent = (o3_closetitle ? "title='" + o3_closetitle +"'" : "") + " onclick"; - if (o3_capicon != "") { - nameId = ' hspace = \"5\"'+' align = \"middle\" alt = \"\"'; - if (typeof o3_dragimg != 'undefined' && o3_dragimg) nameId =' hspace=\"5\"'+' name=\"'+o3_dragimg+'\" id=\"'+o3_dragimg+'\" align=\"middle\" alt=\"Drag Enabled\" title=\"Drag Enabled\"'; - o3_capicon = '<img src=\"'+o3_capicon+'\"'+nameId+' />'; - } - - if (close != "") - closing = '<td '+(!o3_compatmode && o3_closefontclass ? 'class="'+o3_closefontclass : 'align="RIGHT')+'"><a href="javascript:return '+fnRef+'cClick();"'+((o3_compatmode && o3_closefontclass) ? ' class="' + o3_closefontclass + '" ' : ' ')+closeevent+'="return '+fnRef+'cClick();">'+(o3_closefontclass ? '' : wrapStr(0,o3_closesize,'close'))+close+(o3_closefontclass ? '' : wrapStr(1,o3_closesize,'close'))+'</a></td>'; - txt = '<table width="'+o3_width+ '" border="0" cellpadding="'+o3_border+'" cellspacing="0" '+(o3_bgclass ? 'class="'+o3_bgclass+'"' : o3_bgcolor+' '+o3_bgbackground+' '+o3_height)+'><tr><td><table width="100%" border="0" cellpadding="2" cellspacing="0"><tr><td'+(o3_captionfontclass ? ' class="'+o3_captionfontclass+'">' : '>')+(o3_captionfontclass ? '' : '<b>'+wrapStr(0,o3_captionsize,'caption'))+o3_capicon+title+(o3_captionfontclass ? '' : wrapStr(1,o3_captionsize)+'</b>')+'</td>'+closing+'</tr></table><table width="100%" border="0" '+((olNs4||!cpIsMultiple) ? 'cellpadding="'+o3_cellpad+'" ' : '')+'cellspacing="0" '+(o3_fgclass ? 'class="'+o3_fgclass+'"' : o3_fgcolor+' '+o3_fgbackground+' '+o3_height)+'><tr><td valign="TOP"'+(o3_textfontclass ? ' class="'+o3_textfontclass+'">' :((!olNs4&&cpIsMultiple) ? ' style="'+setCellPadStr(o3_cellpad)+'">' : '>'))+(o3_textfontclass ? '' : wrapStr(0,o3_textsize,'text'))+text+(o3_textfontclass ? '' : wrapStr(1,o3_textsize)) + '</td></tr></table></td></tr></table>'; - - set_background(""); - return txt; -} - -// Sets the background picture,padding and lots more. :) -function ol_content_background(text,picture,hasfullhtml) { - if (hasfullhtml) { - txt=text; - } else { - txt='<table width="'+o3_width+'" border="0" cellpadding="0" cellspacing="0" height="'+o3_height+'"><tr><td colspan="3" height="'+o3_padyt+'"></td></tr><tr><td width="'+o3_padxl+'"></td><td valign="TOP" width="'+(o3_width-o3_padxl-o3_padxr)+(o3_textfontclass ? '" class="'+o3_textfontclass : '')+'">'+(o3_textfontclass ? '' : wrapStr(0,o3_textsize,'text'))+text+(o3_textfontclass ? '' : wrapStr(1,o3_textsize))+'</td><td width="'+o3_padxr+'"></td></tr><tr><td colspan="3" height="'+o3_padyb+'"></td></tr></table>'; - } - - set_background(picture); - return txt; -} - -// Loads a picture into the div. -function set_background(pic) { - if (pic == "") { - if (olNs4) { - over.background.src = null; - } else if (over.style) { - over.style.backgroundImage = "none"; - } - } else { - if (olNs4) { - over.background.src = pic; - } else if (over.style) { - over.style.width=o3_width + 'px'; - over.style.backgroundImage = "url("+pic+")"; - } - } -} - -//////// -// HANDLING FUNCTIONS -//////// -var olShowId=-1; - -// Displays the popup -function disp(statustext) { - runHook("disp", FBEFORE); - - if (o3_allowmove == 0) { - runHook("placeLayer", FREPLACE); - (olNs6&&olShowId<0) ? olShowId=setTimeout("runHook('showObject', FREPLACE, over)", 1) : runHook("showObject", FREPLACE, over); - o3_allowmove = (o3_sticky || o3_followmouse==0) ? 0 : 1; - } - - runHook("disp", FAFTER); - - if (statustext != "") self.status = statustext; -} - -// Creates the actual popup structure -function createPopup(lyrContent){ - runHook("createPopup", FBEFORE); - - if (o3_wrap) { - var wd,ww,theObj = (olNs4 ? over : over.style); - theObj.top = theObj.left = ((olIe4&&!olOp) ? 0 : -10000) + (!olNs4 ? 'px' : 0); - layerWrite(lyrContent); - wd = (olNs4 ? over.clip.width : over.offsetWidth); - if (wd > (ww=windowWidth())) { - lyrContent=lyrContent.replace(/\ /g, ' '); - o3_width=ww; - o3_wrap=0; - } - } - - layerWrite(lyrContent); - - // Have to set o3_width for placeLayer() routine if o3_wrap is turned on - if (o3_wrap) o3_width=(olNs4 ? over.clip.width : over.offsetWidth); - - runHook("createPopup", FAFTER, lyrContent); - - return true; -} - -// Decides where we want the popup. -function placeLayer() { - var placeX, placeY, widthFix = 0; - - // HORIZONTAL PLACEMENT, re-arranged to work in Safari - if (o3_frame.innerWidth) widthFix=18; - iwidth = windowWidth(); - - // Horizontal scroll offset - winoffset=(olIe4) ? eval('o3_frame.'+docRoot+'.scrollLeft') : o3_frame.pageXOffset; - - placeX = runHook('horizontalPlacement',FCHAIN,iwidth,winoffset,widthFix); - - // VERTICAL PLACEMENT, re-arranged to work in Safari - if (o3_frame.innerHeight) { - iheight=o3_frame.innerHeight; - } else if (eval('o3_frame.'+docRoot)&&eval("typeof o3_frame."+docRoot+".clientHeight=='number'")&&eval('o3_frame.'+docRoot+'.clientHeight')) { - iheight=eval('o3_frame.'+docRoot+'.clientHeight'); - } - - // Vertical scroll offset - scrolloffset=(olIe4) ? eval('o3_frame.'+docRoot+'.scrollTop') : o3_frame.pageYOffset; - placeY = runHook('verticalPlacement',FCHAIN,iheight,scrolloffset); - - // Actually move the object. - repositionTo(over, placeX, placeY); -} - -// Moves the layer -function olMouseMove(e) { - var e = (e) ? e : event; - - if (e.pageX) { - o3_x = e.pageX; - o3_y = e.pageY; - } else if (e.clientX) { - o3_x = eval('e.clientX+o3_frame.'+docRoot+'.scrollLeft'); - o3_y = eval('e.clientY+o3_frame.'+docRoot+'.scrollTop'); - } - - if (o3_allowmove == 1) runHook("placeLayer", FREPLACE); - - // MouseOut handler - if (hoveringSwitch && !olNs4 && runHook("cursorOff", FREPLACE)) { - (olHideDelay ? hideDelay(olHideDelay) : cClick()); - hoveringSwitch = !hoveringSwitch; - } -} - -// Fake function for 3.0 users. -function no_overlib() { return ver3fix; } - -// Capture the mouse and chain other scripts. -function olMouseCapture() { - capExtent = document; - var fN, str = '', l, k, f, wMv, sS, mseHandler = olMouseMove; - var re = /function[ ]*(\w*)\(/; - - wMv = (!olIe4 && window.onmousemove); - if (document.onmousemove || wMv) { - if (wMv) capExtent = window; - f = capExtent.onmousemove.toString(); - fN = f.match(re); - if (fN == null) { - str = f+'(e); '; - } else if (fN[1] == 'anonymous' || fN[1] == 'olMouseMove' || (wMv && fN[1] == 'onmousemove')) { - if (!olOp && wMv) { - l = f.indexOf('{')+1; - k = f.lastIndexOf('}'); - sS = f.substring(l,k); - if ((l = sS.indexOf('(')) != -1) { - sS = sS.substring(0,l).replace(/^\s+/,'').replace(/\s+$/,''); - if (eval("typeof " + sS + " == 'undefined'")) window.onmousemove = null; - else str = sS + '(e);'; - } - } - if (!str) { - olCheckMouseCapture = false; - return; - } - } else { - if (fN[1]) str = fN[1]+'(e); '; - else { - l = f.indexOf('{')+1; - k = f.lastIndexOf('}'); - str = f.substring(l,k) + '\n'; - } - } - str += 'olMouseMove(e); '; - mseHandler = new Function('e', str); - } - - capExtent.onmousemove = mseHandler; - if (olNs4) capExtent.captureEvents(Event.MOUSEMOVE); -} - -//////// -// PARSING FUNCTIONS -//////// - -// Does the actual command parsing. -function parseTokens(pf, ar) { - // What the next argument is expected to be. - var v, i, mode=-1, par = (pf != 'ol_'); - var fnMark = (par && !ar.length ? 1 : 0); - - for (i = 0; i < ar.length; i++) { - if (mode < 0) { - // Arg is maintext,unless its a number between pmStart and pmUpper - // then its a command. - if (typeof ar[i] == 'number' && ar[i] > pmStart && ar[i] < pmUpper) { - fnMark = (par ? 1 : 0); - i--; // backup one so that the next block can parse it - } else { - switch(pf) { - case 'ol_': - ol_text = ar[i].toString(); - break; - default: - o3_text=ar[i].toString(); - } - } - mode = 0; - } else { - // Note: NS4 doesn't like switch cases with vars. - if (ar[i] >= pmCount || ar[i]==DONOTHING) { continue; } - if (ar[i]==INARRAY) { fnMark = 0; eval(pf+'text=ol_texts['+ar[++i]+'].toString()'); continue; } - if (ar[i]==CAPARRAY) { eval(pf+'cap=ol_caps['+ar[++i]+'].toString()'); continue; } - if (ar[i]==STICKY) { if (pf!='ol_') eval(pf+'sticky=1'); continue; } - if (ar[i]==BACKGROUND) { eval(pf+'background="'+ar[++i]+'"'); continue; } - if (ar[i]==NOCLOSE) { if (pf!='ol_') opt_NOCLOSE(); continue; } - if (ar[i]==CAPTION) { eval(pf+"cap='"+escSglQuote(ar[++i])+"'"); continue; } - if (ar[i]==CENTER || ar[i]==LEFT || ar[i]==RIGHT) { eval(pf+'hpos='+ar[i]); if(pf!='ol_') olHautoFlag=1; continue; } - if (ar[i]==OFFSETX) { eval(pf+'offsetx='+ar[++i]); continue; } - if (ar[i]==OFFSETY) { eval(pf+'offsety='+ar[++i]); continue; } - if (ar[i]==FGCOLOR) { eval(pf+'fgcolor="'+ar[++i]+'"'); continue; } - if (ar[i]==BGCOLOR) { eval(pf+'bgcolor="'+ar[++i]+'"'); continue; } - if (ar[i]==TEXTCOLOR) { eval(pf+'textcolor="'+ar[++i]+'"'); continue; } - if (ar[i]==CAPCOLOR) { eval(pf+'capcolor="'+ar[++i]+'"'); continue; } - if (ar[i]==CLOSECOLOR) { eval(pf+'closecolor="'+ar[++i]+'"'); continue; } - if (ar[i]==WIDTH) { eval(pf+'width='+ar[++i]); continue; } - if (ar[i]==BORDER) { eval(pf+'border='+ar[++i]); continue; } - if (ar[i]==CELLPAD) { i=opt_MULTIPLEARGS(++i,ar,(pf+'cellpad')); continue; } - if (ar[i]==STATUS) { eval(pf+"status='"+escSglQuote(ar[++i])+"'"); continue; } - if (ar[i]==AUTOSTATUS) { eval(pf +'autostatus=('+pf+'autostatus == 1) ? 0 : 1'); continue; } - if (ar[i]==AUTOSTATUSCAP) { eval(pf +'autostatus=('+pf+'autostatus == 2) ? 0 : 2'); continue; } - if (ar[i]==HEIGHT) { eval(pf+'height='+pf+'aboveheight='+ar[++i]); continue; } // Same param again. - if (ar[i]==CLOSETEXT) { eval(pf+"close='"+escSglQuote(ar[++i])+"'"); continue; } - if (ar[i]==SNAPX) { eval(pf+'snapx='+ar[++i]); continue; } - if (ar[i]==SNAPY) { eval(pf+'snapy='+ar[++i]); continue; } - if (ar[i]==FIXX) { eval(pf+'fixx='+ar[++i]); continue; } - if (ar[i]==FIXY) { eval(pf+'fixy='+ar[++i]); continue; } - if (ar[i]==RELX) { eval(pf+'relx='+ar[++i]); continue; } - if (ar[i]==RELY) { eval(pf+'rely='+ar[++i]); continue; } - if (ar[i]==FGBACKGROUND) { eval(pf+'fgbackground="'+ar[++i]+'"'); continue; } - if (ar[i]==BGBACKGROUND) { eval(pf+'bgbackground="'+ar[++i]+'"'); continue; } - if (ar[i]==PADX) { eval(pf+'padxl='+ar[++i]); eval(pf+'padxr='+ar[++i]); continue; } - if (ar[i]==PADY) { eval(pf+'padyt='+ar[++i]); eval(pf+'padyb='+ar[++i]); continue; } - if (ar[i]==FULLHTML) { if (pf!='ol_') eval(pf+'fullhtml=1'); continue; } - if (ar[i]==BELOW || ar[i]==ABOVE) { eval(pf+'vpos='+ar[i]); if (pf!='ol_') olVautoFlag=1; continue; } - if (ar[i]==CAPICON) { eval(pf+'capicon="'+ar[++i]+'"'); continue; } - if (ar[i]==TEXTFONT) { eval(pf+"textfont='"+escSglQuote(ar[++i])+"'"); continue; } - if (ar[i]==CAPTIONFONT) { eval(pf+"captionfont='"+escSglQuote(ar[++i])+"'"); continue; } - if (ar[i]==CLOSEFONT) { eval(pf+"closefont='"+escSglQuote(ar[++i])+"'"); continue; } - if (ar[i]==TEXTSIZE) { eval(pf+'textsize="'+ar[++i]+'"'); continue; } - if (ar[i]==CAPTIONSIZE) { eval(pf+'captionsize="'+ar[++i]+'"'); continue; } - if (ar[i]==CLOSESIZE) { eval(pf+'closesize="'+ar[++i]+'"'); continue; } - if (ar[i]==TIMEOUT) { eval(pf+'timeout='+ar[++i]); continue; } - if (ar[i]==FUNCTION) { if (pf=='ol_') { if (typeof ar[i+1]!='number') { v=ar[++i]; ol_function=(typeof v=='function' ? v : null); }} else {fnMark = 0; v = null; if (typeof ar[i+1]!='number') v = ar[++i]; opt_FUNCTION(v); } continue; } - if (ar[i]==DELAY) { eval(pf+'delay='+ar[++i]); continue; } - if (ar[i]==HAUTO) { eval(pf+'hauto=('+pf+'hauto == 0) ? 1 : 0'); continue; } - if (ar[i]==VAUTO) { eval(pf+'vauto=('+pf+'vauto == 0) ? 1 : 0'); continue; } - if (ar[i]==CLOSECLICK) { eval(pf +'closeclick=('+pf+'closeclick == 0) ? 1 : 0'); continue; } - if (ar[i]==WRAP) { eval(pf +'wrap=('+pf+'wrap == 0) ? 1 : 0'); continue; } - if (ar[i]==FOLLOWMOUSE) { eval(pf +'followmouse=('+pf+'followmouse == 1) ? 0 : 1'); continue; } - if (ar[i]==MOUSEOFF) { eval(pf +'mouseoff=('+pf+'mouseoff==0) ? 1 : 0'); v=ar[i+1]; if (pf != 'ol_' && eval(pf+'mouseoff') && typeof v == 'number' && (v < pmStart || v > pmUpper)) olHideDelay=ar[++i]; continue; } - if (ar[i]==CLOSETITLE) { eval(pf+"closetitle='"+escSglQuote(ar[++i])+"'"); continue; } - if (ar[i]==CSSOFF||ar[i]==CSSCLASS) { eval(pf+'css='+ar[i]); continue; } - if (ar[i]==COMPATMODE) { eval(pf+'compatmode=('+pf+'compatmode==0) ? 1 : 0'); continue; } - if (ar[i]==FGCLASS) { eval(pf+'fgclass="'+ar[++i]+'"'); continue; } - if (ar[i]==BGCLASS) { eval(pf+'bgclass="'+ar[++i]+'"'); continue; } - if (ar[i]==TEXTFONTCLASS) { eval(pf+'textfontclass="'+ar[++i]+'"'); continue; } - if (ar[i]==CAPTIONFONTCLASS) { eval(pf+'captionfontclass="'+ar[++i]+'"'); continue; } - if (ar[i]==CLOSEFONTCLASS) { eval(pf+'closefontclass="'+ar[++i]+'"'); continue; } - i = parseCmdLine(pf, i, ar); - } - } - - if (fnMark && o3_function) o3_text = o3_function(); - - if ((pf == 'o3_') && o3_wrap) { - o3_width = 0; - - var tReg=/<.*\n*>/ig; - if (!tReg.test(o3_text)) o3_text = o3_text.replace(/[ ]+/g, ' '); - if (!tReg.test(o3_cap))o3_cap = o3_cap.replace(/[ ]+/g, ' '); - } - if ((pf == 'o3_') && o3_sticky) { - if (!o3_close && (o3_frame != ol_frame)) o3_close = ol_close; - if (o3_mouseoff && (o3_frame == ol_frame)) opt_NOCLOSE(' '); - } -} - - -//////// -// LAYER FUNCTIONS -//////// - -// Writes to a layer -function layerWrite(txt) { - txt += "\n"; - if (olNs4) { - var lyr = o3_frame.document.layers['overDiv'].document - lyr.write(txt) - lyr.close() - } else if (typeof over.innerHTML != 'undefined') { - if (olIe5 && isMac) over.innerHTML = ''; - over.innerHTML = txt; - } else { - range = o3_frame.document.createRange(); - range.setStartAfter(over); - domfrag = range.createContextualFragment(txt); - - while (over.hasChildNodes()) { - over.removeChild(over.lastChild); - } - - over.appendChild(domfrag); - } -} - -// Make an object visible -function showObject(obj) { - runHook("showObject", FBEFORE); - - var theObj=(olNs4 ? obj : obj.style); - theObj.visibility = 'visible'; - - runHook("showObject", FAFTER); -} - -// Hides an object -function hideObject(obj) { - runHook("hideObject", FBEFORE); - - var theObj=(olNs4 ? obj : obj.style); - if (olNs6 && olShowId>0) { clearTimeout(olShowId); olShowId=0; } - theObj.visibility = 'hidden'; - theObj.top = theObj.left = ((olIe4&&!olOp) ? 0 : -10000) + (!olNs4 ? 'px' : 0); - - if (o3_timerid > 0) clearTimeout(o3_timerid); - if (o3_delayid > 0) clearTimeout(o3_delayid); - - o3_timerid = 0; - o3_delayid = 0; - self.status = ""; - - if (obj.onmouseout||obj.onmouseover) { - if (olNs4) obj.releaseEvents(Event.MOUSEOUT || Event.MOUSEOVER); - obj.onmouseout = obj.onmouseover = null; - } - - runHook("hideObject", FAFTER); -} - -// Move a layer -function repositionTo(obj, xL, yL) { - var theObj=(olNs4 ? obj : obj.style); - theObj.left = xL + (!olNs4 ? 'px' : 0); - theObj.top = yL + (!olNs4 ? 'px' : 0); -} - -// Check position of cursor relative to overDiv DIVision; mouseOut function -function cursorOff() { - var left = parseInt(over.style.left); - var top = parseInt(over.style.top); - var right = left + (over.offsetWidth >= parseInt(o3_width) ? over.offsetWidth : parseInt(o3_width)); - var bottom = top + (over.offsetHeight >= o3_aboveheight ? over.offsetHeight : o3_aboveheight); - - if (o3_x < left || o3_x > right || o3_y < top || o3_y > bottom) return true; - - return false; -} - - -//////// -// COMMAND FUNCTIONS -//////// - -// Calls callme or the default function. -function opt_FUNCTION(callme) { - o3_text = (callme ? (typeof callme=='string' ? (/.+\(.*\)/.test(callme) ? eval(callme) : callme) : callme()) : (o3_function ? o3_function() : 'No Function')); - - return 0; -} - -// Handle hovering -function opt_NOCLOSE(unused) { - if (!unused) o3_close = ""; - - if (olNs4) { - over.captureEvents(Event.MOUSEOUT || Event.MOUSEOVER); - over.onmouseover = function () { if (o3_timerid > 0) { clearTimeout(o3_timerid); o3_timerid = 0; } } - over.onmouseout = function (e) { if (olHideDelay) hideDelay(olHideDelay); else cClick(e); } - } else { - over.onmouseover = function () {hoveringSwitch = true; if (o3_timerid > 0) { clearTimeout(o3_timerid); o3_timerid =0; } } - } - - return 0; -} - -// Function to scan command line arguments for multiples -function opt_MULTIPLEARGS(i, args, parameter) { - var k=i, re, pV, str=''; - - for(k=i; k<args.length; k++) { - if(typeof args[k] == 'number' && args[k]>pmStart) break; - str += args[k] + ','; - } - if (str) str = str.substring(0,--str.length); - - k--; // reduce by one so the for loop this is in works correctly - pV=(olNs4 && /cellpad/i.test(parameter)) ? str.split(',')[0] : str; - eval(parameter + '="' + pV + '"'); - - return k; -} - -// Remove in texts when done. -function nbspCleanup() { - if (o3_wrap) { - o3_text = o3_text.replace(/\ /g, ' '); - o3_cap = o3_cap.replace(/\ /g, ' '); - } -} - -// Escape embedded single quotes in text strings -function escSglQuote(str) { - return str.toString().replace(/'/g,"\\'"); -} - -// Onload handler for window onload event -function OLonLoad_handler(e) { - var re = /\w+\(.*\)[;\s]+/g, olre = /overlib\(|nd\(|cClick\(/, fn, l, i; - - if(!olLoaded) olLoaded=1; - - // Remove it for Gecko based browsers - if(window.removeEventListener && e.eventPhase == 3) window.removeEventListener("load",OLonLoad_handler,false); - else if(window.detachEvent) { // and for IE and Opera 4.x but execute calls to overlib, nd, or cClick() - window.detachEvent("onload",OLonLoad_handler); - var fN = document.body.getAttribute('onload'); - if (fN) { - fN=fN.toString().match(re); - if (fN && fN.length) { - for (i=0; i<fN.length; i++) { - if (/anonymous/.test(fN[i])) continue; - while((l=fN[i].search(/\)[;\s]+/)) != -1) { - fn=fN[i].substring(0,l+1); - fN[i] = fN[i].substring(l+2); - if (olre.test(fn)) eval(fn); - } - } - } - } - } -} - -// Wraps strings in Layer Generation Functions with the correct tags -// endWrap true(if end tag) or false if start tag -// fontSizeStr - font size string such as '1' or '10px' -// whichString is being wrapped -- 'text', 'caption', or 'close' -function wrapStr(endWrap,fontSizeStr,whichString) { - var fontStr, fontColor, isClose=((whichString=='close') ? 1 : 0), hasDims=/[%\-a-z]+$/.test(fontSizeStr); - fontSizeStr = (olNs4) ? (!hasDims ? fontSizeStr : '1') : fontSizeStr; - if (endWrap) return (hasDims&&!olNs4) ? (isClose ? '</span>' : '</div>') : '</font>'; - else { - fontStr='o3_'+whichString+'font'; - fontColor='o3_'+((whichString=='caption')? 'cap' : whichString)+'color'; - return (hasDims&&!olNs4) ? (isClose ? '<span style="font-family: '+quoteMultiNameFonts(eval(fontStr))+'; color: '+eval(fontColor)+'; font-size: '+fontSizeStr+';">' : '<div style="font-family: '+quoteMultiNameFonts(eval(fontStr))+'; color: '+eval(fontColor)+'; font-size: '+fontSizeStr+';">') : '<font face="'+eval(fontStr)+'" color="'+eval(fontColor)+'" size="'+(parseInt(fontSizeStr)>7 ? '7' : fontSizeStr)+'">'; - } -} - -// Quotes Multi word font names; needed for CSS Standards adherence in font-family -function quoteMultiNameFonts(theFont) { - var v, pM=theFont.split(','); - for (var i=0; i<pM.length; i++) { - v=pM[i]; - v=v.replace(/^\s+/,'').replace(/\s+$/,''); - if(/\s/.test(v) && !/['"]/.test(v)) { - v="\'"+v+"\'"; - pM[i]=v; - } - } - return pM.join(); -} - -// dummy function which will be overridden -function isExclusive(args) { - return false; -} - -// Sets cellpadding style string value -function setCellPadStr(parameter) { - var Str='', j=0, ary = new Array(), top, bottom, left, right; - - Str+='padding: '; - ary=parameter.replace(/\s+/g,'').split(','); - - switch(ary.length) { - case 2: - top=bottom=ary[j]; - left=right=ary[++j]; - break; - case 3: - top=ary[j]; - left=right=ary[++j]; - bottom=ary[++j]; - break; - case 4: - top=ary[j]; - right=ary[++j]; - bottom=ary[++j]; - left=ary[++j]; - break; - } - - Str+= ((ary.length==1) ? ary[0] + 'px;' : top + 'px ' + right + 'px ' + bottom + 'px ' + left + 'px;'); - - return Str; -} - -// function will delay close by time milliseconds -function hideDelay(time) { - if (time&&!o3_delay) { - if (o3_timerid > 0) clearTimeout(o3_timerid); - - o3_timerid=setTimeout("cClick()",(o3_timeout=time)); - } -} - -// Was originally in the placeLayer() routine; separated out for future ease -function horizontalPlacement(browserWidth, horizontalScrollAmount, widthFix) { - var placeX, iwidth=browserWidth, winoffset=horizontalScrollAmount; - var parsedWidth = parseInt(o3_width); - - if (o3_fixx > -1 || o3_relx != null) { - // Fixed position - placeX=(o3_relx != null ? ( o3_relx < 0 ? winoffset +o3_relx+ iwidth - parsedWidth - widthFix : winoffset+o3_relx) : o3_fixx); - } else { - // If HAUTO, decide what to use. - if (o3_hauto == 1) { - if ((o3_x - winoffset) > (iwidth / 2)) { - o3_hpos = LEFT; - } else { - o3_hpos = RIGHT; - } - } - - // From mouse - if (o3_hpos == CENTER) { // Center - placeX = o3_x+o3_offsetx-(parsedWidth/2); - - if (placeX < winoffset) placeX = winoffset; - } - - if (o3_hpos == RIGHT) { // Right - placeX = o3_x+o3_offsetx; - - if ((placeX+parsedWidth) > (winoffset+iwidth - widthFix)) { - placeX = iwidth+winoffset - parsedWidth - widthFix; - if (placeX < 0) placeX = 0; - } - } - if (o3_hpos == LEFT) { // Left - placeX = o3_x-o3_offsetx-parsedWidth; - if (placeX < winoffset) placeX = winoffset; - } - - // Snapping! - if (o3_snapx > 1) { - var snapping = placeX % o3_snapx; - - if (o3_hpos == LEFT) { - placeX = placeX - (o3_snapx+snapping); - } else { - // CENTER and RIGHT - placeX = placeX+(o3_snapx - snapping); - } - - if (placeX < winoffset) placeX = winoffset; - } - } - - return placeX; -} - -// was originally in the placeLayer() routine; separated out for future ease -function verticalPlacement(browserHeight,verticalScrollAmount) { - var placeY, iheight=browserHeight, scrolloffset=verticalScrollAmount; - var parsedHeight=(o3_aboveheight ? parseInt(o3_aboveheight) : (olNs4 ? over.clip.height : over.offsetHeight)); - - if (o3_fixy > -1 || o3_rely != null) { - // Fixed position - placeY=(o3_rely != null ? (o3_rely < 0 ? scrolloffset+o3_rely+iheight - parsedHeight : scrolloffset+o3_rely) : o3_fixy); - } else { - // If VAUTO, decide what to use. - if (o3_vauto == 1) { - if ((o3_y - scrolloffset) > (iheight / 2) && o3_vpos == BELOW && (o3_y + parsedHeight + o3_offsety - (scrolloffset + iheight) > 0)) { - o3_vpos = ABOVE; - } else if (o3_vpos == ABOVE && (o3_y - (parsedHeight + o3_offsety) - scrolloffset < 0)) { - o3_vpos = BELOW; - } - } - - // From mouse - if (o3_vpos == ABOVE) { - if (o3_aboveheight == 0) o3_aboveheight = parsedHeight; - - placeY = o3_y - (o3_aboveheight+o3_offsety); - if (placeY < scrolloffset) placeY = scrolloffset; - } else { - // BELOW - placeY = o3_y+o3_offsety; - } - - // Snapping! - if (o3_snapy > 1) { - var snapping = placeY % o3_snapy; - - if (o3_aboveheight > 0 && o3_vpos == ABOVE) { - placeY = placeY - (o3_snapy+snapping); - } else { - placeY = placeY+(o3_snapy - snapping); - } - - if (placeY < scrolloffset) placeY = scrolloffset; - } - } - - return placeY; -} - -// checks positioning flags -function checkPositionFlags() { - if (olHautoFlag) olHautoFlag = o3_hauto=0; - if (olVautoFlag) olVautoFlag = o3_vauto=0; - return true; -} - -// get Browser window width -function windowWidth() { - var w; - if (o3_frame.innerWidth) w=o3_frame.innerWidth; - else if (eval('o3_frame.'+docRoot)&&eval("typeof o3_frame."+docRoot+".clientWidth=='number'")&&eval('o3_frame.'+docRoot+'.clientWidth')) - w=eval('o3_frame.'+docRoot+'.clientWidth'); - return w; -} - -// create the div container for popup content if it doesn't exist -function createDivContainer(id,frm,zValue) { - id = (id || 'overDiv'), frm = (frm || o3_frame), zValue = (zValue || 1000); - var objRef, divContainer = layerReference(id); - - if (divContainer == null) { - if (olNs4) { - divContainer = frm.document.layers[id] = new Layer(window.innerWidth, frm); - objRef = divContainer; - } else { - var body = (olIe4 ? frm.document.all.tags('BODY')[0] : frm.document.getElementsByTagName("BODY")[0]); - if (olIe4&&!document.getElementById) { - body.insertAdjacentHTML("beforeEnd",'<div id="'+id+'"></div>'); - divContainer=layerReference(id); - } else { - divContainer = frm.document.createElement("DIV"); - divContainer.id = id; - body.appendChild(divContainer); - } - objRef = divContainer.style; - } - - objRef.position = 'absolute'; - objRef.visibility = 'hidden'; - objRef.zIndex = zValue; - if (olIe4&&!olOp) objRef.left = objRef.top = '0px'; - else objRef.left = objRef.top = -10000 + (!olNs4 ? 'px' : 0); - } - - return divContainer; -} - -// get reference to a layer with ID=id -function layerReference(id) { - return (olNs4 ? o3_frame.document.layers[id] : (document.all ? o3_frame.document.all[id] : o3_frame.document.getElementById(id))); -} -//////// -// UTILITY FUNCTIONS -//////// - -// Checks if something is a function. -function isFunction(fnRef) { - var rtn = true; - - if (typeof fnRef == 'object') { - for (var i = 0; i < fnRef.length; i++) { - if (typeof fnRef[i]=='function') continue; - rtn = false; - break; - } - } else if (typeof fnRef != 'function') { - rtn = false; - } - - return rtn; -} - -// Converts an array into an argument string for use in eval. -function argToString(array, strtInd, argName) { - var jS = strtInd, aS = '', ar = array; - argName=(argName ? argName : 'ar'); - - if (ar.length > jS) { - for (var k = jS; k < ar.length; k++) aS += argName+'['+k+'], '; - aS = aS.substring(0, aS.length-2); - } - - return aS; -} - -// Places a hook in the correct position in a hook point. -function reOrder(hookPt, fnRef, order) { - var newPt = new Array(), match, i, j; - - if (!order || typeof order == 'undefined' || typeof order == 'number') return hookPt; - - if (typeof order=='function') { - if (typeof fnRef=='object') { - newPt = newPt.concat(fnRef); - } else { - newPt[newPt.length++]=fnRef; - } - - for (i = 0; i < hookPt.length; i++) { - match = false; - if (typeof fnRef == 'function' && hookPt[i] == fnRef) { - continue; - } else { - for(j = 0; j < fnRef.length; j++) if (hookPt[i] == fnRef[j]) { - match = true; - break; - } - } - if (!match) newPt[newPt.length++] = hookPt[i]; - } - - newPt[newPt.length++] = order; - - } else if (typeof order == 'object') { - if (typeof fnRef == 'object') { - newPt = newPt.concat(fnRef); - } else { - newPt[newPt.length++] = fnRef; - } - - for (j = 0; j < hookPt.length; j++) { - match = false; - if (typeof fnRef == 'function' && hookPt[j] == fnRef) { - continue; - } else { - for (i = 0; i < fnRef.length; i++) if (hookPt[j] == fnRef[i]) { - match = true; - break; - } - } - if (!match) newPt[newPt.length++]=hookPt[j]; - } - - for (i = 0; i < newPt.length; i++) hookPt[i] = newPt[i]; - newPt.length = 0; - - for (j = 0; j < hookPt.length; j++) { - match = false; - for (i = 0; i < order.length; i++) { - if (hookPt[j] == order[i]) { - match = true; - break; - } - } - if (!match) newPt[newPt.length++] = hookPt[j]; - } - newPt = newPt.concat(order); - } - - hookPt = newPt; - - return hookPt; -} - -//////// -// PLUGIN ACTIVATION FUNCTIONS -//////// - -// Runs plugin functions to set runtime variables. -function setRunTimeVariables(){ - if (typeof runTime != 'undefined' && runTime.length) { - for (var k = 0; k < runTime.length; k++) { - runTime[k](); - } - } -} - -// Runs plugin functions to parse commands. -function parseCmdLine(pf, i, args) { - if (typeof cmdLine != 'undefined' && cmdLine.length) { - for (var k = 0; k < cmdLine.length; k++) { - var j = cmdLine[k](pf, i, args); - if (j >- 1) { - i = j; - break; - } - } - } - - return i; -} - -// Runs plugin functions to do things after parse. -function postParseChecks(pf,args){ - if (typeof postParse != 'undefined' && postParse.length) { - for (var k = 0; k < postParse.length; k++) { - if (postParse[k](pf,args)) continue; - return false; // end now since have an error - } - } - return true; -} - - -//////// -// PLUGIN REGISTRATION FUNCTIONS -//////// - -// Registers commands and creates constants. -function registerCommands(cmdStr) { - if (typeof cmdStr!='string') return; - - var pM = cmdStr.split(','); - pms = pms.concat(pM); - - for (var i = 0; i< pM.length; i++) { - eval(pM[i].toUpperCase()+'='+pmCount++); - } -} - -// Registers no-parameter commands -function registerNoParameterCommands(cmdStr) { - if (!cmdStr && typeof cmdStr != 'string') return; - pmt=(!pmt) ? cmdStr : pmt + ',' + cmdStr; -} - -// Register a function to hook at a certain point. -function registerHook(fnHookTo, fnRef, hookType, optPm) { - var hookPt, last = typeof optPm; - - if (fnHookTo == 'plgIn'||fnHookTo == 'postParse') return; - if (typeof hookPts[fnHookTo] == 'undefined') hookPts[fnHookTo] = new FunctionReference(); - - hookPt = hookPts[fnHookTo]; - - if (hookType != null) { - if (hookType == FREPLACE) { - hookPt.ovload = fnRef; // replace normal overlib routine - if (fnHookTo.indexOf('ol_content_') > -1) hookPt.alt[pms[CSSOFF-1-pmStart]]=fnRef; - - } else if (hookType == FBEFORE || hookType == FAFTER) { - var hookPt=(hookType == 1 ? hookPt.before : hookPt.after); - - if (typeof fnRef == 'object') { - hookPt = hookPt.concat(fnRef); - } else { - hookPt[hookPt.length++] = fnRef; - } - - if (optPm) hookPt = reOrder(hookPt, fnRef, optPm); - - } else if (hookType == FALTERNATE) { - if (last=='number') hookPt.alt[pms[optPm-1-pmStart]] = fnRef; - } else if (hookType == FCHAIN) { - hookPt = hookPt.chain; - if (typeof fnRef=='object') hookPt=hookPt.concat(fnRef); // add other functions - else hookPt[hookPt.length++]=fnRef; - } - - return; - } -} - -// Register a function that will set runtime variables. -function registerRunTimeFunction(fn) { - if (isFunction(fn)) { - if (typeof fn == 'object') { - runTime = runTime.concat(fn); - } else { - runTime[runTime.length++] = fn; - } - } -} - -// Register a function that will handle command parsing. -function registerCmdLineFunction(fn){ - if (isFunction(fn)) { - if (typeof fn == 'object') { - cmdLine = cmdLine.concat(fn); - } else { - cmdLine[cmdLine.length++] = fn; - } - } -} - -// Register a function that does things after command parsing. -function registerPostParseFunction(fn){ - if (isFunction(fn)) { - if (typeof fn == 'object') { - postParse = postParse.concat(fn); - } else { - postParse[postParse.length++] = fn; - } - } -} - -//////// -// PLUGIN REGISTRATION FUNCTIONS -//////// - -// Runs any hooks registered. -function runHook(fnHookTo, hookType) { - var l = hookPts[fnHookTo], k, rtnVal = null, optPm, arS, ar = runHook.arguments; - - if (hookType == FREPLACE) { - arS = argToString(ar, 2); - - if (typeof l == 'undefined' || !(l = l.ovload)) rtnVal = eval(fnHookTo+'('+arS+')'); - else rtnVal = eval('l('+arS+')'); - - } else if (hookType == FBEFORE || hookType == FAFTER) { - if (typeof l != 'undefined') { - l=(hookType == 1 ? l.before : l.after); - - if (l.length) { - arS = argToString(ar, 2); - for (var k = 0; k < l.length; k++) eval('l[k]('+arS+')'); - } - } - } else if (hookType == FALTERNATE) { - optPm = ar[2]; - arS = argToString(ar, 3); - - if (typeof l == 'undefined' || (l = l.alt[pms[optPm-1-pmStart]]) == 'undefined') { - rtnVal = eval(fnHookTo+'('+arS+')'); - } else { - rtnVal = eval('l('+arS+')'); - } - } else if (hookType == FCHAIN) { - arS=argToString(ar,2); - l=l.chain; - - for (k=l.length; k > 0; k--) if((rtnVal=eval('l[k-1]('+arS+')'))!=void(0)) break; - } - - return rtnVal; -} - -//////// -// OBJECT CONSTRUCTORS -//////// - -// Object for handling hooks. -function FunctionReference() { - this.ovload = null; - this.before = new Array(); - this.after = new Array(); - this.alt = new Array(); - this.chain = new Array(); -} - -// Object for simple access to the overLIB version used. -// Examples: simpleversion:351 major:3 minor:5 revision:1 -function Info(version, prerelease) { - this.version = version; - this.prerelease = prerelease; - - this.simpleversion = Math.round(this.version*100); - this.major = parseInt(this.simpleversion / 100); - this.minor = parseInt(this.simpleversion / 10) - this.major * 10; - this.revision = parseInt(this.simpleversion) - this.major * 100 - this.minor * 10; - this.meets = meets; -} - -// checks for Core Version required -function meets(reqdVersion) { - return (!reqdVersion) ? false : this.simpleversion >= Math.round(100*parseFloat(reqdVersion)); -} - - -//////// -// STANDARD REGISTRATIONS -//////// -registerHook("ol_content_simple", ol_content_simple, FALTERNATE, CSSOFF); -registerHook("ol_content_caption", ol_content_caption, FALTERNATE, CSSOFF); -registerHook("ol_content_background", ol_content_background, FALTERNATE, CSSOFF); -registerHook("ol_content_simple", ol_content_simple, FALTERNATE, CSSCLASS); -registerHook("ol_content_caption", ol_content_caption, FALTERNATE, CSSCLASS); -registerHook("ol_content_background", ol_content_background, FALTERNATE, CSSCLASS); -registerPostParseFunction(checkPositionFlags); -registerHook("hideObject", nbspCleanup, FAFTER); -registerHook("horizontalPlacement", horizontalPlacement, FCHAIN); -registerHook("verticalPlacement", verticalPlacement, FCHAIN); -if (olNs4||(olIe5&&isMac)||olKq) olLoaded=1; -registerNoParameterCommands('sticky,autostatus,autostatuscap,fullhtml,hauto,vauto,closeclick,wrap,followmouse,mouseoff,compatmode'); -/////// -// ESTABLISH MOUSECAPTURING -/////// - -// Capture events, alt. diffuses the overlib function. -var olCheckMouseCapture=true; -if ((olNs4 || olNs6 || olIe4)) { - olMouseCapture(); -} else { - overlib = no_overlib; - nd = no_overlib; - ver3fix = true; -} diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_anchor.js b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_anchor.js deleted file mode 100644 index 9da26865c5b..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_anchor.js +++ /dev/null @@ -1,333 +0,0 @@ -//\///// -//\ overLIB Anchor Plugin -//\ This file requires overLIB 4.10 or later. -//\ -//\ overLIB 4.10 - You may not remove or change this notice. -//\ Copyright Erik Bosrup 1998-2004. All rights reserved. -//\ Contributors are listed on the homepage. -//\ See http://www.bosrup.com/web/overlib/ for details. -// $Revision: 1.7 $ $Date: 2004/11/25 21:27:19 $ -//\///// -//\mini - - -//////// -// PRE-INIT -// Ignore these lines, configuration is below. -//////// -if (typeof olInfo == 'undefined' || typeof olInfo.meets == 'undefined' || !olInfo.meets(4.10)) alert('overLIB 4.10 or later is required for the Anchor Plugin.'); -else { -registerCommands('anchor,anchorx,anchory,noanchorwarn,anchoralign'); - - - -//////// -// DEFAULT CONFIGURATION -// Settings you want everywhere are set here. All of this can also be -// changed on your html page or through an overLIB call. -//////// -if (typeof ol_anchor == 'undefined') var ol_anchor = ''; -if (typeof ol_anchorx == 'undefined') var ol_anchorx = 0; -if (typeof ol_anchory == 'undefined') var ol_anchory = 0; -if (typeof ol_noanchorwarn == 'undefined') var ol_noanchorwarn = 1; -if (typeof ol_anchoralign == 'undefined') var ol_anchoralign = 'UL'; - -//////// -// END OF CONFIGURATION -// Don't change anything below this line, all configuration is above. -//////// - - - - - -//////// -// INIT -//////// -// Runtime variables init. Don't change for config! -var o3_anchor = ""; -var o3_anchorx = 0; -var o3_anchory = 0; -var o3_noanchorwarn = 1; -var o3_anchoralign = 'UL'; -var mrkObj, rmrkPosition; //reference mark object, reference mark position, an array; - - -//////// -// PLUGIN FUNCTIONS -//////// -function setAnchorVariables() { - o3_anchor = ol_anchor; - o3_anchorx = ol_anchorx; - o3_anchory = ol_anchory; - o3_noanchorwarn = ol_noanchorwarn; - o3_anchoralign = ol_anchoralign; - mrkObj = null; // initialize this variable -} - -// Parses Reference Mark commands -function parseAnchorExtras(pf,i,ar) { - var v, k=i; - - if (k < ar.length) { - if (ar[k] == ANCHOR) { eval(pf + "anchor = '" + escSglQuote(ar[++k]) + "'"); return k; } - if (ar[k] == ANCHORX) { eval(pf + 'anchorx = ' + ar[++k]); return k; } - if (ar[k] == ANCHORY) { eval(pf + 'anchory = ' + ar[++k]); return k; } - if (ar[k] == NOANCHORWARN) { eval(pf + 'noanchorwarn = (' + pf + 'noanchorwarn==1) ? 0 : 1'); return k; } - if (ar[k] == ANCHORALIGN) { k = opt_MULTIPLEARGS(++k, ar, (pf + 'anchoralign')); return k; } - } - - return -1; -} - - -/////// -// FUNCTION WHICH CHECKS FOR THE EXISTENCE OF A REFERENCE MARKER -/////// -function checkAnchorObject() { - var w = o3_anchor; - - if (w) { - if (!(mrkObj = getAnchorObjectRef(w))) { - if (o3_noanchorwarn) { - alert('WARNING! Reference mark "' + w + '" not found.'); - return false; - } else w = ''; - } - } - - return true; -} - -/////// -// EXTERNAL SUPPORT FUNCTIONS TO HANDLE ANCHOR PROPERTIES -/////// - -// Horizontal placement routine with anchors -function anchorHorizontal(browserWidth, horizontalScrollAmount, widthFix) { - var hasAnchor = (typeof o3_anchor != 'undefined' && o3_anchor); - if (!hasAnchor) return void(0); - - // set o3_relx for follow scroll if defined - if (typeof o3_followscroll != 'undefined' && o3_followscroll && o3_sticky) o3_relx = rmrkPosition[0]; - - return rmrkPosition[0]; -} - -// Vertical placement routine with anchors -function anchorVertical(browserHeight,verticalScrollAmount) { - var hasAnchor = (typeof o3_anchor != 'undefined' && o3_anchor); - if (!hasAnchor) return void(0); - - // set o3_rely for follow scroll if defined - if (typeof o3_followscroll != 'undefined' && o3_followscroll && o3_sticky) o3_rely = rmrkPosition[1]; - - return rmrkPosition[1]; -} - -// Stub function for the runHook routine -function anchorPreface() { - if (!mrkObj) return; - rmrkPosition = getAnchorLocation(mrkObj); -} - -// Get Reference Mark object -function getAnchorObjectRef(aObj) { - return getRefById(aObj, o3_frame.document) || getRefByName(aObj, o3_frame.document) -} - -// Adapted to overlib from jwin by Jason Anderson -- http://www.jwinlib.com -function getAnchorLocation(objRef){ - var mkObj, of, offsets, mlyr - - mkObj = mlyr = objRef - offsets = [o3_anchorx, o3_anchory] - - if (document.layers){ - if (typeof mlyr.length != 'undefined' && mlyr.length > 1) { - mkObj = mlyr[0] - offsets[0] += mlyr[0].x + mlyr[1].pageX - offsets[1] += mlyr[0].y + mlyr[1].pageY - } else { - if(mlyr.toString().indexOf('Image') != -1 || mlyr.toString().indexOf('Anchor') != -1){ - offsets[0] += mlyr.x - offsets[1] += mlyr.y - } else { - offsets[0] += mlyr.pageX - offsets[1] += mlyr.pageY - } - } - } else { - offsets[0] += pageLocation(mlyr, 'Left') - offsets[1] += pageLocation(mlyr, 'Top') - } - - of = getAnchorOffsets(mkObj) - - if (typeof o3_dragimg != 'undefined' && o3_dragimg) { - olImgLeft = offsets[0]; - olImgTop = offsets[1]; - } - - offsets[0] += of[0] - offsets[1] += of[1] - - if (typeof o3_dragimg != 'undefined' && o3_dragimg) { - olImgRight = offsets[0]; - olImgBottom = offsets[1]; - return; - } - - return offsets; -} - -// Adapted to overlib from jwin by Jason Anderson -- http://www.jwinlib.com -function getAnchorOffsets(mkObj){ - var fx = fy = 0, mp, puc, mkAry, sx = sy = 0, w = o3_anchoralign - var mW = mH = pW = pH = 0 - var off = [0, 0] - - mkAry = w.split(','); - - if (mkAry.length < 3) { - mp = mkAry[0].toUpperCase(); - puc = (mkAry.length == 1) ? mp : mkAry[1].toUpperCase(); - } else if (mkAry.length == 3) { - if (!isNaN(mkAry[0])) { - mp = mkAry.slice(0, 2); - puc = mkAry[2].toUpperCase(); - } else { - mp = mkAry[0].toUpperCase(); - puc = mkAry.slice(1); - } - } else { - mp = mkAry.slice(0, 2); - puc = mkAry.slice(2); - } - - var shdwPresent = typeof o3_shadow != 'undefined' && o3_shadow - - if (shdwPresent) { - sx = Math.abs(o3_shadowx); - sy = Math.abs(o3_shadowy); - } - - pW = (shdwPresent ? parseInt(o3_width) : (olNs4 ? over.clip.width : over.offsetWidth)) - pH = (shdwPresent ? parseInt(o3_aboveheight) : (olNs4 ? over.clip.height : over.offsetHeight)) - - if (olOp && o3_wrap) { - pW = (shdwPresent ? parseInt(o3_width) : (olNs4 ? over.clip.width : over.offsetWidth)) - pH = (shdwPresent ? parseInt(o3_aboveheight) : (olNs4 ? over.clip.height : over.offsetHeight)) - } - - if (!olOp && mkObj.toString().indexOf('Image') != -1){ - mW = mkObj.width - mH = mkObj.height - } else if (!olOp && mkObj.toString().indexOf('Anchor') != -1) { // enforced only for NS4 - mp = 'UL' - } else { - mW = (olNs4) ? mkObj.clip.width : mkObj.offsetWidth - mH = (olNs4) ? mkObj.clip.height : mkObj.offsetHeight - } - - if (!isNaN(mp) || typeof mp == 'object') { - if (typeof mp == 'object') { - fx = parseFloat(mp[0]); - fy = parseFloat(mp[1]); - } else - fx = fy = parseFloat(mp); - off = [Math.round(fx*mW), Math.round(fy*mH)]; - } else { - if (mp == 'UR') off = [mW, 0] - else if (mp == 'LL') off = [0, mH] - else if (mp == 'LR') off = [mW, mH] - } - - if (typeof o3_dragimg != 'undefined' && o3_dragimg) return off; - else { - if (!isNaN(puc) || typeof puc == 'object' ) { - if (typeof puc == 'object') { - fx = parseFloat(puc[0]); - fy = parseFloat(puc[1]); - } else - fx = fy = parseFloat(puc); - off[0] -= Math.round(fx*(pW - sx)); - off[1] -= Math.round(fy*(pH - sy)); - } else { - if (puc == 'UR') { - off[0] -= (pW - sx); - off[1] -= sy - } else if (puc == 'LL') { - off[0] -= sx; - off[1] -= (pH - sy) - } else if (puc == 'LR') { - off[0] -= (pW-sx); - off[1] -= (pH - sy) - } - } - return off - } -} - -// Adapted to overlib from jwin by Jason Anderson -- http://www.jwinlib.com -function pageLocation(o, t){ - var x = 0 - - while(o.offsetParent){ - x += o['offset' + t] - o = o.offsetParent - } - x += o['offset' + t] - - return x -} - -// Adapted to overlib from jwin by Jason Anderson -- http://www.jwinlib.com -function getRefById(l, d){ - var r = "", j - - d = (d || document) - if (d.all) return d.all[l] - else if (d.getElementById) return d.getElementById(l) - else if (d.layers && d.layers.length > 0) { - if (d.layers[l]) return d.layers[l] - - for (j=0; j < d.layers.length; j++) { - r = getRefById(l, d.layers[j].document) - if(r) return r - } - } - - return false -} - -// Adapted to overlib from jwin by Jason Anderson -- http://www.jwinlib.com -function getRefByName(l, d) { - var r = null, j - - d = (d || document) - - if (d.images[l]) return d.images[l] - else if (d.anchors[l]) return d.anchors[l]; - else if (d.layers && d.layers.length > 0) { - for (j=0; j < d.layers.length; j++) { - r = getRefByName(l, d.layers[j].document) - if (r && r.length > 0) return r - else if (r) return [r, d.layers[j]] - } - } - - return null -} - -//////// -// PLUGIN REGISTRATIONS -//////// -registerRunTimeFunction(setAnchorVariables); -registerCmdLineFunction(parseAnchorExtras); -registerPostParseFunction(checkAnchorObject); -registerHook("createPopup", anchorPreface, FAFTER); -registerHook("horizontalPlacement", anchorHorizontal, FCHAIN); -registerHook("verticalPlacement", anchorVertical, FCHAIN); -if(olInfo.meets(4.10)) registerNoParameterCommands('noanchorwarn'); -}
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_centerpopup.js b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_centerpopup.js deleted file mode 100644 index 1af5a386219..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_centerpopup.js +++ /dev/null @@ -1,89 +0,0 @@ -//\///// -//\ overLIB Center Popup Plugin -//\ This file requires overLIB 4.10 or later. -//\ -//\ overLIB 4.10 - You may not remove or change this notice. -//\ Copyright Erik Bosrup 1998-2003. All rights reserved. -//\ Contributors are listed on the homepage. -//\ See http://www.bosrup.com/web/overlib/ for details. -// $Revision: 1.3 $ $Date: 2004/11/25 21:27:19 $ -// -//\///// -//\mini -//////// -// PRE-INIT -// Ignore these lines, configuration is below. -//////// -if (typeof olInfo == 'undefined' || typeof olInfo.meets == 'undefined' || !olInfo.meets(4.10)) alert('overLIB 4.10 or later is required for the Center Popup Plugin.'); -else { -registerCommands('centerpopup,centeroffset'); -//////// -// DEFAULT CONFIGURATION -// You don't have to change anything here if you don't want to. All of this can be -// changed on your html page or through an overLIB call. -//////// -// Default value for centerpopup is to not center the popup -if (typeof ol_centerpopup == 'undefined') var ol_centerpopup = 0; -if (typeof ol_centeroffset == 'undefined') var ol_centeroffset = '0'; -//////// -// END OF CONFIGURATION -// Don't change anything below this line, all configuration is above. -//////// -//////// -// INIT -//////// -// Runtime variables init. Don't change for config! -var o3_centerpopup = 0; -var o3_centeroffset = '0'; -//////// -// PLUGIN FUNCTIONS -//////// -function setCenterPopupVariables() { - o3_centerpopup = ol_centerpopup; - o3_centeroffset = ol_centeroffset; -} -// Parses Shadow and Scroll commands -function parseCenterPopupExtras(pf,i,ar) { - var k = i,v; - - if (k < ar.length) { - if (ar[k] == CENTERPOPUP) { eval(pf + 'centerpopup = (' + pf + 'centerpopup == 0) ? 1 : 0'); return k; } - if (ar[k] == CENTEROFFSET) { k = opt_MULTIPLEARGS(++k,ar,(pf + 'centeroffset')); return k; } - } - - return -1; -} -// Function which positions popup in Center of screen -function centerPopupHorizontal(browserWidth, horizontalScrollAmount, widthFix) { - if (!o3_centerpopup) return void(0); - - var vdisp = o3_centeroffset.split(','); - var placeX, iwidth = browserWidth, winoffset = horizontalScrollAmount; - var pWd = parseInt(o3_width); - - placeX = winoffset + Math.round((iwidth - widthFix - pWd)/2) + parseInt(vdisp[0]); - if(typeof o3_followscroll != 'undefined' && o3_followscroll && o3_sticky) o3_relx = placeX; - - return placeX; -} -function centerPopupVertical(browserHeight,verticalScrollAmount) { - if (!o3_centerpopup) return void(0); - - var placeY, iheight = browserHeight, scrolloffset = verticalScrollAmount; - var vdisp = o3_centeroffset.split(','); - var pHeight = (o3_aboveheight ? parseInt(o3_aboveheight) : (olNs4 ? over.clip.height : over.offsetHeight)); - - placeY = scrolloffset + Math.round((iheight - pHeight)/2) + (vdisp.length > 1 ? parseInt(vdisp[1]) : 0); - if(typeof o3_followscroll != 'undefined' && o3_followscroll && o3_sticky) o3_rely = placeY; - - return placeY; -} -//////// -// PLUGIN REGISTRATIONS -//////// -registerRunTimeFunction(setCenterPopupVariables); -registerCmdLineFunction(parseCenterPopupExtras); -registerHook('horizontalPlacement',centerPopupHorizontal,FCHAIN); -registerHook('verticalPlacement', centerPopupVertical, FCHAIN); -if(olInfo.meets(4.10)) registerNoParameterCommands('centerpopup'); -}
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_crossframe.js b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_crossframe.js deleted file mode 100644 index 1baa805579e..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_crossframe.js +++ /dev/null @@ -1,105 +0,0 @@ -//\///// -//\ overLIB Crossframe Support Plugin -//\ This file requires overLIB 4.10 or later. -//\ -//\ overLIB 4.05 - You may not remove or change this notice. -//\ Copyright Erik Bosrup 1998-2004. All rights reserved. -//\ Contributors are listed on the homepage. -//\ See http://www.bosrup.com/web/overlib/ for details. -// $Revision: 1.8 $ $Date: 2004/11/25 21:27:19 $ -//\///// -//\mini - -//////// -// PRE-INIT -// Ignore these lines, configuration is below. -//////// -if (typeof olInfo == 'undefined' || typeof olInfo.meets == 'undefined' || !olInfo.meets(4.10)) alert('overLIB 4.10 or later is required for the Cross Frame Support Plugin.'); -else { -registerCommands('frame'); - - -//////// -// PLUGIN FUNCTIONS -/////// - -// Parses FRAME command -function parseFrameExtras(pf,i,ar) { - var k = i,v; - - if (k < ar.length) { - if (ar[k] == FRAME) { v = ar[++k]; if(pf == 'ol_') ol_frame = v; else opt_FRAME(v); return k; } - } - - return -1; -} - -//////// -// SUPPORT FUNCTIONS -//////// - -// Defines which frame we should point to. -function opt_FRAME(frm) { - o3_frame = frm; - over = createDivContainer('overDiv'); - return 0; -} - -// Get frame depth of nested frames -function frmDepth(thisFrame,ofrm) { - var retVal = ''; - - for (var i = 0; i<thisFrame.length; i++) { - if (thisFrame[i].length > 0) { - retVal = frmDepth(thisFrame[i],ofrm); - if (retVal == '') continue; - } else if (thisFrame[i] != ofrm) continue; - retVal = '[' + i + ']' + retVal; - break; - } - - return retVal; -} - -// Gets frame reference value relative to top frame -function getFrmRef(srcFrm,tgetFrm) { - var rtnVal = '' - - if (tgetFrm != srcFrm) { - var tFrm = frmDepth(top.frames,tgetFrm) - var sFrm = frmDepth(top.frames,srcFrm) - if (sFrm.length == tFrm.length) { - l = tFrm.lastIndexOf('[') - - if (l) { - while ( sFrm.substring(0,l) != tFrm.substring(0,l) ) - l = tFrm.lastIndexOf('[',l-1) - tFrm = tFrm.substr(l) - sFrm = sFrm.substr(l) - } - } - - var cnt = 0, p = '',str = tFrm - while ((k = str.lastIndexOf('[')) != -1) { - cnt++ - str = str.substring(0,k) - } - - for (var i = 0; i<cnt; i++) p = p + 'parent.' - rtnVal = p + 'frames' + sFrm + '.' - } - - return rtnVal -} - -function chkForFrmRef() { - if(o3_frame != ol_frame) fnRef = getFrmRef(ol_frame,o3_frame) - return true; -} - -//////// -// PLUGIN REGISTRATIONS -//////// -registerCmdLineFunction(parseFrameExtras); -registerPostParseFunction(chkForFrmRef); -}
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_cssstyle.js b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_cssstyle.js deleted file mode 100644 index b7682c1bc50..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_cssstyle.js +++ /dev/null @@ -1,182 +0,0 @@ -//\///// -//\ overLIB CSS Style Plugin -//\ This file requires overLIB 4.10 or later. -//\ -//\ overLIB 4.05 - You may not remove or change this notice. -//\ Copyright Erik Bosrup 1998-2004. All rights reserved. -//\ Contributors are listed on the homepage. -//\ See http://www.bosrup.com/web/overlib/ for details. -// $Revision: 1.11 $ $Date: 2004/11/25 21:27:19 $ -//\///// -//\mini - - -//////// -// PRE-INIT -// Ignore these lines, configuration is below. -//////// -if (typeof olInfo == 'undefined' || typeof olInfo.meets == 'undefined' || !olInfo.meets(4.10)) alert('overLIB 4.10 or later is required for the CSS Style Plugin.'); -else { -registerCommands('cssstyle,padunit,heightunit,widthunit,textsizeunit,textdecoration,textstyle,textweight,captionsizeunit,captiondecoration,captionstyle,captionweight,closesizeunit,closedecoration,closestyle,closeweight'); - - -//////// -// DEFAULT CONFIGURATION -// Settings you want everywhere are set here. All of this can also be -// changed on your html page or through an overLIB call. -//////// -if (typeof ol_padunit=='undefined') var ol_padunit="px"; -if (typeof ol_heightunit=='undefined') var ol_heightunit="px"; -if (typeof ol_widthunit=='undefined') var ol_widthunit="px"; -if (typeof ol_textsizeunit=='undefined') var ol_textsizeunit="px"; -if (typeof ol_textdecoration=='undefined') var ol_textdecoration="none"; -if (typeof ol_textstyle=='undefined') var ol_textstyle="normal"; -if (typeof ol_textweight=='undefined') var ol_textweight="normal"; -if (typeof ol_captionsizeunit=='undefined') var ol_captionsizeunit="px"; -if (typeof ol_captiondecoration=='undefined') var ol_captiondecoration="none"; -if (typeof ol_captionstyle=='undefined') var ol_captionstyle="normal"; -if (typeof ol_captionweight=='undefined') var ol_captionweight="bold"; -if (typeof ol_closesizeunit=='undefined') var ol_closesizeunit="px"; -if (typeof ol_closedecoration=='undefined') var ol_closedecoration="none"; -if (typeof ol_closestyle=='undefined') var ol_closestyle="normal"; -if (typeof ol_closeweight=='undefined') var ol_closeweight="normal"; - -//////// -// END OF CONFIGURATION -// Don't change anything below this line, all configuration is above. -//////// - - - -//////// -// INIT -//////// -// Runtime variables init. Don't change for config! -var o3_padunit="px"; -var o3_heightunit="px"; -var o3_widthunit="px"; -var o3_textsizeunit="px"; -var o3_textdecoration=""; -var o3_textstyle=""; -var o3_textweight=""; -var o3_captionsizeunit="px"; -var o3_captiondecoration=""; -var o3_captionstyle=""; -var o3_captionweight=""; -var o3_closesizeunit="px"; -var o3_closedecoration=""; -var o3_closestyle=""; -var o3_closeweight=""; - - -//////// -// PLUGIN FUNCTIONS -//////// - -// Function which sets runtime variables to their default values -function setCSSStyleVariables() { - o3_padunit=ol_padunit; - o3_heightunit=ol_heightunit; - o3_widthunit=ol_widthunit; - o3_textsizeunit=ol_textsizeunit; - o3_textdecoration=ol_textdecoration; - o3_textstyle=ol_textstyle; - o3_textweight=ol_textweight; - o3_captionsizeunit=ol_captionsizeunit; - o3_captiondecoration=ol_captiondecoration; - o3_captionstyle=ol_captionstyle; - o3_captionweight=ol_captionweight; - o3_closesizeunit=ol_closesizeunit; - o3_closedecoration=ol_closedecoration; - o3_closestyle=ol_closestyle; - o3_closeweight=ol_closeweight; -} - -// Parses CSS Style commands. -function parseCSSStyleExtras(pf, i, ar) { - var k = i; - - if (k < ar.length) { - if (ar[k]==CSSSTYLE) { eval(pf+'css='+ar[k]); return k; } - if (ar[k]==PADUNIT) { eval(pf+'padunit="'+ar[++k]+'"'); return k; } - if (ar[k]==HEIGHTUNIT) { eval(pf+'heightunit="'+ar[++k]+'"'); return k; } - if (ar[k]==WIDTHUNIT) { eval(pf+'widthunit="'+ar[++k]+'"'); return k; } - if (ar[k]==TEXTSIZEUNIT) { eval(pf+'textsizeunit="'+ar[++k]+'"'); return k; } - if (ar[k]==TEXTDECORATION) { eval(pf+'textdecoration="'+ar[++k]+'"'); return k; } - if (ar[k]==TEXTSTYLE) { eval(pf+'textstyle="'+ar[++k]+'"'); return k; } - if (ar[k]==TEXTWEIGHT) { eval(pf+'textweight="'+ar[++k]+'"'); return k; } - if (ar[k]==CAPTIONSIZEUNIT) { eval(pf+'captionsizeunit="'+ar[++k]+'"'); return k; } - if (ar[k]==CAPTIONDECORATION) { eval(pf+'captiondecoration="'+ar[++k]+'"'); return k; } - if (ar[k]==CAPTIONSTYLE) { eval(pf+'captionstyle="'+ar[++k]+'"'); return k; } - if (ar[k]==CAPTIONWEIGHT) { eval(pf+'captionweight="'+ar[++k]+'"'); return k; } - if (ar[k]==CLOSESIZEUNIT) { eval(pf+'closesizeunit="'+ar[++k]+'"'); return k; } - if (ar[k]==CLOSEDECORATION) { eval(pf+'closedecoration="'+ar[++k]+'"'); return k; } - if (ar[k]==CLOSESTYLE) { eval(pf+'closestyle="'+ar[++k]+'"'); return k; } - if (ar[k]==CLOSEWEIGHT) { eval(pf+'closeweight="'+ar[++k]+'"'); return k; } - } - - return -1; -} - -//////// -// LAYER GENERATION FUNCTIONS -//////// - -// Makes simple table without caption -function ol_content_simple_cssstyle(text) { - txt = '<table width="'+o3_width+ '" border="0" cellpadding="'+o3_border+'" cellspacing="0" style="background-color: '+o3_bgcolor+'; height: '+o3_height+o3_heightunit+';"><tr><td><table width="100%" border="0" cellpadding="' + o3_cellpad + '" cellspacing="0" style="color: '+o3_fgcolor+'; background-color: '+o3_fgcolor+'; height: '+o3_height+o3_heightunit+';"><tr><td valign="TOP"><font style="font-family: '+o3_textfont+'; color: '+o3_textcolor+'; font-size: '+o3_textsize+o3_textsizeunit+'; text-decoration: '+o3_textdecoration+'; font-weight: '+o3_textweight+'; font-style:'+o3_textstyle+'">'+text+'</font></td></tr></table></td></tr></table>'; - set_background(""); - - return txt; -} - -// Makes table with caption and optional close link -function ol_content_caption_cssstyle(text, title, close) { - var nameId; - closing = ""; - closeevent = "onMouseOver"; - - if (o3_closeclick == 1) closeevent= (o3_closetitle ? "title='" + o3_closetitle +"'" : "") + " onClick"; - - if (o3_capicon!="") { - nameId=' hspace=\"5\"'+' align=\"middle\" alt=\"\"'; - if (typeof o3_dragimg != 'undefined' && o3_dragimg) nameId = ' hspace=\"5\"'+' name=\"'+o3_dragimg+'\" id=\"'+o3_dragimg+'\" align=\"middle\" alt=\"Drag Enabled\" title=\"Drag Enabled\"'; - o3_capicon = '<img src=\"'+o3_capicon+'\"'+nameId+' />'; - } - - if (close != "") { - closing = '<td align="RIGHT"><a href="javascript:return '+fnRef+'cClick();" '+closeevent+'="return '+fnRef+'cClick();" style="color: '+o3_closecolor+'; font-family: '+o3_closefont+'; font-size: '+o3_closesize+o3_closesizeunit+'; text-decoration: '+o3_closedecoration+'; font-weight: '+o3_closeweight+'; font-style:'+o3_closestyle+';">'+close+'</a></td>'; - } - - txt = '<table width="'+o3_width+ '" border="0" cellpadding="'+o3_border+'" cellspacing="0" style="background-color: '+o3_bgcolor+'; background-image: url('+o3_bgbackground+'); height: '+o3_height+o3_heightunit+';"><tr><td><table width="100%" border="0" cellpadding="0" cellspacing="0"><tr><td><font style="font-family: '+o3_captionfont+'; color: '+o3_capcolor+'; font-size: '+o3_captionsize+o3_captionsizeunit+'; font-weight: '+o3_captionweight+'; font-style: '+o3_captionstyle+'; text-decoration: '+o3_captiondecoration+';">'+o3_capicon+title+'</font></td>'+closing+'</tr></table><table width="100%" border="0" cellpadding="' + o3_cellpad + '" cellspacing="0" style="color: '+o3_fgcolor+'; background-color: '+o3_fgcolor+'; height: '+o3_height+o3_heightunit+';"><tr><td valign="TOP"><font style="font-family: '+o3_textfont+'; color: '+o3_textcolor+'; font-size: '+o3_textsize+o3_textsizeunit+'; text-decoration: '+o3_textdecoration+'; font-weight: '+o3_textweight+'; font-style:'+o3_textstyle+'">'+text+'</font></td></tr></table></td></tr></table>'; - set_background(""); - - return txt; -} - -// Sets the background picture, padding and lots more. :) -function ol_content_background_cssstyle(text, picture, hasfullhtml) { - if (hasfullhtml) { - txt = text; - } else { - var pU, hU, wU; - pU = (o3_padunit == '%' ? '%' : ''); - hU = (o3_heightunit == '%' ? '%' : ''); - wU = (o3_widthunit == '%' ? '%' : ''); - txt = '<table width="'+o3_width+wu+'" border="0" cellpadding="0" cellspacing="0" height="'+o3_height+hu+'"><tr><td colspan="3" height="'+o3_padyt+pu+'"></td></tr><tr><td width="'+o3_padxl+pu+'"></td><td valign="TOP" width="'+(o3_width-o3_padxl-o3_padxr)+pu+'"><font style="font-family: '+o3_textfont+'; color: '+o3_textcolor+'; font-size: '+o3_textsize+o3_textsizeunit+';">'+text+'</font></td><td width="'+o3_padxr+pu+'"></td></tr><tr><td colspan="3" height="'+o3_padyb+pu+'"></td></tr></table>'; - } - - set_background(picture); - - return txt; -} - -//////// -// PLUGIN REGISTRATIONS -//////// -registerRunTimeFunction(setCSSStyleVariables); -registerCmdLineFunction(parseCSSStyleExtras); -registerHook("ol_content_simple", ol_content_simple_cssstyle, FALTERNATE, CSSSTYLE); -registerHook("ol_content_caption", ol_content_caption_cssstyle, FALTERNATE, CSSSTYLE); -registerHook("ol_content_background", ol_content_background_cssstyle, FALTERNATE, CSSSTYLE); -}
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_debug.js b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_debug.js deleted file mode 100644 index 085ea3343fc..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_debug.js +++ /dev/null @@ -1,177 +0,0 @@ -//\///// -//\ overLIB Debug Plugin -//\ This file requires overLIB 4.10 or later. -//\ -//\ overLIB 4.05 - You may not remove or change this notice. -//\ Copyright Erik Bosrup 1998-2003. All rights reserved. -//\ Contributors are listed on the homepage. -//\ See http://www.bosrup.com/web/overlib/ for details. -// $Revision: 1.6 $ $Date: 2005/02/01 22:18:44 $ -// -//\///// -//\mini -//////// -// PRE-INIT -// Ignore these lines, configuration is below. -//////// -if (typeof olInfo == 'undefined' || typeof olInfo.meets == 'undefined' || !olInfo.meets(4.10)) alert('overLIB 4.10 or later is required for the Debug Plugin.'); -else { -var olZindex; -registerCommands('allowdebug'); -//////// -// PLUGIN FUNCTIONS -//////// -// Parses Debug Parameters -function parseDebugExtras(pf, i, ar) { - var k = i, v; - - if (k < ar.length) { - if (ar[k] == ALLOWDEBUG) { v = ar[k + 1]; if(typeof v == 'string') {v = ar[++k]; if (pf != 'ol_') setCanShowParm(v);} return k; } - } - - return -1; -} -// Debug main routine -function showProperties() { - var args = showProperties.arguments, sho, shoObj, vis, lvl = 0, istrt = 0, theDiv = 'showProps', txt = ''; - - if (args.length == 0) return; - if (args.length % 2 && typeof args[0] == 'string') { - istrt = 1; - theDiv = args[0]; - } - - sho = createDivContainer(theDiv); - - if (olNs4) { - shoObj = sho; - txt += '<table cellpadding="1" cellspacing="0" border="0" bgcolor="#000000"><tr><td>'; - } else { - with(sho.style) { - backgroundColor = '#ffffcc'; - padding = '5px'; - border = '1px #000000 solid'; - } - shoObj = sho.style; - } - - lvl = getLayerLevel(theDiv); - - if(typeof sho.position == 'undefined') { - sho.position = new Pagelocation(10 + lvl*20, 10, 1); - if(typeof olZindex == 'undefined') olZindex = getDivZindex(); - shoObj.zIndex = olZindex + 1 + lvl; - } - - txt += '<table cellpadding="5" border="0" cellspacing="0"' + (olNs4 ? ' bgcolor="#ffffcc"' : '') + '>'; - txt += '<tr><td><strong><A HREF="javascript:moveToBack(\'' + theDiv + '\');" title="Move to back">' + theDiv + '</A></strong></td><td align="RIGHT"><strong><a href="javascript:closeLayer(\'' + theDiv + '\');" TITLE="Close Layer' + (!olNs4 ? '" style="background-color: #CCCCCC; border:2px #333369 outset; padding: 2px;' : '') + '">X</a></strong></td></tr>'; - txt += '<tr><td style="text-decoration: underline;"><strong>Item</strong></td><td style="text-decoration: underline;"><strong>Value</strong></td></tr>'; - for (var i = istrt; i<args.length-1; i++) - txt += '<tr><td align="right"><strong>' + args[i] + ': </strong></td><td>' + args[++i] + '</td></tr>'; - txt += '</table>' + (olNs4 ? '</td></tr></table>' : ''); - - if (olNs4) { - sho.document.open(); - sho.document.write(txt); - sho.document.close(); - } else { - if(olIe5&&isMac) sho.innerHTML = ''; - sho.innerHTML = txt; - } - - showAllVisibleLayers(); -} -function getLayerLevel(lyr) { - var i = 0; - - if (typeof document.popups == 'undefined') { - document.popups = new Array(lyr); - } else { - var l = document.popups; - for (var i = 0; i<l.length; i++) if (lyr == l[i]) break; - if(i == l.length) l[l.length++] = lyr; - } - - return i; -} -function getDivZindex(id) { - var obj; - - if(id == '' || id == null) id = 'overDiv'; - - obj = layerReference(id); - obj = (olNs4 ? obj : obj.style); - - return obj.zIndex; -} -function setCanShowParm(debugID) { - var lyr, pLyr; - - if(typeof debugID != 'string') return; - - pLyr = debugID.split(','); - for(var i = 0; i<pLyr.length; i++) { - lyr = layerReference(pLyr[i]); - if(lyr != null && typeof lyr.position != 'undefined') lyr.position.canShow = 1; - } -} -function Pagelocation(x, y, canShow) { - this.x = x; - this.y = y; - this.canShow = (canShow == null) ? 0 : canShow; -} -function showAllVisibleLayers(){ - var lyr, lyrObj, l = document.popups; - - for (var i = 0; i<l.length; i++) { - lyr = layerReference(l[i]); - lyrObj = (olNs4 ? lyr : lyr.style); - if(lyr.position.canShow) { - positionLayer(lyrObj, lyr.position.x, lyr.position.y); - lyrObj.visibility = 'visible'; - } - } -} -function positionLayer(Obj, x, y) { // Obj is obj.style for IE/NS6+ but obj for NS4 - Obj.left = x + (olIe4 ? eval(docRoot + '.scrollLeft') : window.pageXOffset) + (olNs4 ? 0 : 'px'); - Obj.top = y + (olIe4 ? eval(docRoot + '.scrollTop') : window.pageYOffset) + (olNs4 ? 0 : 'px'); -} -function closeLayer(lyrID) { - var lyr = layerReference(lyrID); - - lyr.position.canShow = 0; - lyr = (olNs4 ? lyr : lyr.style); - lyr.visibility = 'hidden'; -} -function moveToBack(layer) { - var l = document.popups, lyr, obj, i, x = 10, y = 10, dx = 20, z = olZindex + 1; - - if(l.length == 1) return; - - lyr = layerReference(layer); - lyr.position.x = x; - lyr.position.y = y; - obj = (olNs4 ? lyr : lyr.style); - obj.zIndex = z; - - for (i = 0; i<l.length; i++) { - if (layer == l[i]) continue; - lyr = layerReference(l[i]); - if(lyr.position.canShow == 0) continue; - obj = (olNs4 ? lyr : lyr.style); - obj.zIndex += 1; - lyr.position.x += dx; - lyr.position.y = y; - } - - showAllVisibleLayers(); -} -function rawTxt(txt) { - if (typeof txt != 'string') return; - return txt.replace(/</g,"<").replace(/>/g,">").replace(/"/g,"""); -} -//////// -// PLUGIN REGISTRATIONS -//////// -registerCmdLineFunction(parseDebugExtras); -}
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_exclusive.js b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_exclusive.js deleted file mode 100644 index 22a4fc997cc..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_exclusive.js +++ /dev/null @@ -1,123 +0,0 @@ -//\///// -//\ overLIB Exclusive Plugin -//\ This file requires overLIB 4.10 or later. -//\ -//\ overLIB 4.05 - You may not remove or change this notice. -//\ Copyright Erik Bosrup 1998-2004. All rights reserved. -//\ Contributors are listed on the homepage. -//\ See http://www.bosrup.com/web/overlib/ for details. -// $Revision: 1.7 $ $Date: 2004/11/25 21:27:19 $ -//\///// -//\mini -//////// -// PRE-INIT -// Ignore these lines, configuration is below. -//////// -if (typeof olInfo == 'undefined' || typeof olInfo.meets == 'undefined' || !olInfo.meets(4.10)) alert('overLIB 4.10 or later is required for the Debug Plugin.'); -else { -registerCommands('exclusive,exclusivestatus,exclusiveoverride'); -var olOverrideIsSet; // variable which tells if override is set - - -//////// -// DEFAULT CONFIGURATION -// Settings you want everywhere are set here. All of this can also be -// changed on your html page or through an overLIB call. -//////// -if (typeof ol_exclusive == 'undefined') var ol_exclusive = 0; -if (typeof ol_exclusivestatus == 'undefined') var ol_exclusivestatus = 'Please close open popup first.'; - -//////// -// END OF CONFIGURATION -// Don't change anything below this line, all configuration is above. -//////// - - -//////// -// INIT -//////// -// Runtime variables init. Don't change for config! -var o3_exclusive = 0; -var o3_exclusivestatus = ''; - -//////// -// PLUGIN FUNCTIONS -//////// - -// Set runtime variables -function setExclusiveVariables() { - o3_exclusive = ol_exclusive; - o3_exclusivestatus = ol_exclusivestatus; -} - -// Parses Exclusive Parameters -function parseExclusiveExtras(pf,i,ar) { - var k = i,v; - - olOverrideIsSet = false; // a global variable - - if (k < ar.length) { - if (ar[k] == EXCLUSIVEOVERRIDE) { if(pf != 'ol_') olOverrideIsSet = true; return k; } - if (ar[k] == EXCLUSIVE) { eval(pf + 'exclusive = (' + pf + 'exclusive == 0) ? 1 : 0'); return k; } - if (ar[k] == EXCLUSIVESTATUS) { eval(pf + "exclusivestatus = '" + escSglQuote(ar[++k]) + "'"); return k; } - } - - return -1; -} - -/////// -// HELPER FUNCTIONS -/////// -// set status message and indicate whether popup is exclusive -function isExclusive(args) { - var rtnVal = false; - - if(args != null) rtnVal = hasCommand(args, EXCLUSIVEOVERRIDE); - - if(rtnVal) return false; - else { - self.status = (o3_exclusive) ? o3_exclusivestatus : ''; - return o3_exclusive; - } - -} - -// checks overlib argument list to see if it has a COMMAND argument -function hasCommand(args, COMMAND) { - var rtnFlag = false; - - for (var i=0; i<args.length; i++) { - if (typeof args[i] == 'number' && args[i] == COMMAND) { - rtnFlag = true; - break; - } - } - - return rtnFlag; -} - -// makes sure exclusive setting is off -function clearExclusive() { - o3_exclusive = 0; -} - -function setExclusive() { - o3_exclusive = (o3_showingsticky && o3_exclusive); -} - -function chkForExclusive() { - if (olOverrideIsSet) o3_exclusive = 0; // turn it off in case it's been set. - - return true; -} - -//////// -// PLUGIN REGISTRATIONS -//////// -registerRunTimeFunction(setExclusiveVariables); -registerCmdLineFunction(parseExclusiveExtras); -registerPostParseFunction(chkForExclusive); -registerHook("createPopup",setExclusive,FBEFORE); -registerHook("hideObject",clearExclusive,FAFTER); -if (olInfo.meets(4.10)) registerNoParameterCommands('exclusive'); -}
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_followscroll.js b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_followscroll.js deleted file mode 100644 index ddcb985fedf..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_followscroll.js +++ /dev/null @@ -1,175 +0,0 @@ -//\///// -//\ overLIB Follow Scroll Plugin -//\ This file requires overLIB 4.10 or later. -//\ -//\ overLIB 4.10 - You may not remove or change this notice. -//\ Copyright Erik Bosrup 1998-2004. All rights reserved. -//\ Contributors are listed on the homepage. -//\ See http://www.bosrup.com/web/overlib/ for details. -// $Revision: 1.12 $ $Date: 2004/11/25 21:27:19 $ -//\///// -//\mini - -//////// -// PRE-INIT -// Ignore these lines, configuration is below. -//////// -if (typeof olInfo == 'undefined' || typeof olInfo.meets == 'undefined' || !olInfo.meets(4.10)) alert('overLIB 4.10 or later is required for the Follow Scroll Plugin.'); -else { -registerCommands('followscroll,followscrollrefresh'); - - -//////// -// DEFAULT CONFIGURATION -// You don't have to change anything here if you don't want to. All of this can be -// changed on your html page or through an overLIB call. -//////// -// Default value for scroll is not to scroll (0) -if (typeof ol_followscroll=='undefined') var ol_followscroll=0; -if (typeof ol_followscrollrefresh=='undefined') var ol_followscrollrefresh=100; - -//////// -// END OF CONFIGURATION -// Don't change anything below this line, all configuration is above. -//////// - - - - - - - -//////// -// INIT -//////// -// Runtime variables init. Don't change for config! -var o3_followscroll=0; -var o3_followscrollrefresh=100; - - -//////// -// PLUGIN FUNCTIONS -//////// -function setScrollVariables() { - o3_followscroll=ol_followscroll; - o3_followscrollrefresh=ol_followscrollrefresh; -} - -// Parses Shadow and Scroll commands -function parseScrollExtras(pf,i,ar) { - var k=i,v; - if (k < ar.length) { - if (ar[k]==FOLLOWSCROLL) { eval(pf +'followscroll=('+pf+'followscroll==0) ? 1 : 0'); return k; } - if (ar[k]==FOLLOWSCROLLREFRESH) { eval(pf+'followscrollrefresh='+ar[++k]); return k; } - } - return -1; -} - - - -// Function to support scroll feature (overloads default) -function scroll_placeLayer() { - var placeX, placeY, widthFix = 0; - - // HORIZONTAL PLACEMENT - if (o3_frame.innerWidth) { - widthFix=Math.ceil(1.2*(o3_frame.outerWidth - o3_frame.innerWidth)); - widthFix = (widthFix > 50) ? 20 : widthFix; - iwidth=o3_frame.innerWidth; - } else if (eval('o3_frame.'+docRoot)&&eval("typeof o3_frame."+docRoot+".clientWidth=='number'")&&eval('o3_frame.'+docRoot+'.clientWidth')) - iwidth=eval('o3_frame.'+docRoot+'.clientWidth'); - - // Horizontal scroll offset - winoffset=(olIe4) ? eval('o3_frame.'+docRoot+'.scrollLeft') : o3_frame.pageXOffset; - - placeX = runHook('horizontalPlacement',FCHAIN,iwidth,winoffset,widthFix); - - // VERTICAL PLACEMENT - if (o3_frame.innerHeight) iheight=o3_frame.innerHeight; - else if (eval('o3_frame.'+docRoot)&&eval("typeof o3_frame."+docRoot+".clientHeight=='number'")&&eval('o3_frame.'+docRoot+'.clientHeight')) - iheight=eval('o3_frame.'+docRoot+'.clientHeight'); - - // Vertical scroll offset - scrolloffset=(olIe4) ? eval('o3_frame.'+docRoot+'.scrollTop') : o3_frame.pageYOffset; - - placeY = runHook('verticalPlacement',FCHAIN,iheight,scrolloffset); - - // Actually move the object. - repositionTo(over,placeX,placeY); - - if (o3_followscroll && o3_sticky && (o3_relx || o3_rely) && (typeof o3_draggable == 'undefined' || !o3_draggable)) { - if (typeof over.scroller=='undefined' || over.scroller.canScroll) over.scroller = new Scroller(placeX-winoffset,placeY-scrolloffset,o3_followscrollrefresh); - } -} - - - -/////// -// SUPPORT ROUTINES FOR SCROLL FEATURE -/////// - -// Scroller constructor -function Scroller(X,Y,refresh) { - this.canScroll=0; - this.refresh=refresh; - this.x=X; - this.y=Y; - this.timer=setTimeout("repositionOver()",this.refresh); -} - -// Removes the timer to stop replacing the layer. -function cancelScroll() { - if (!o3_followscroll || typeof over.scroller == 'undefined') return; - over.scroller.canScroll = 1; - - if (over.scroller.timer) { - clearTimeout(over.scroller.timer); - over.scroller.timer=null; - } -} - -// Find out how much we've scrolled. - function getPageScrollY() { - if (o3_frame.pageYOffset) return o3_frame.pageYOffset; - if (eval(docRoot)) return eval('o3_frame.' + docRoot + '.scrollTop'); - return -1; -} -function getPageScrollX() { - if (o3_frame.pageXOffset) return o3_frame.pageXOffset; - if (eval(docRoot)) return eval('o3_frame.'+docRoot+'.scrollLeft'); - return -1; -} - -// Find out where our layer is -function getLayerTop(layer) { - if (layer.pageY) return layer.pageY; - if (layer.style.top) return parseInt(layer.style.top); - return -1; -} -function getLayerLeft(layer) { - if (layer.pageX) return layer.pageX; - if (layer.style.left) return parseInt(layer.style.left); - return -1; -} - -// Repositions the layer if needed -function repositionOver() { - var X, Y, pgLeft, pgTop; - pgTop = getPageScrollY(); - pgLeft = getPageScrollX(); - X = getLayerLeft(over)-pgLeft; - Y = getLayerTop(over)-pgTop; - - if (X != over.scroller.x || Y != over.scroller.y) repositionTo(over, pgLeft+over.scroller.x, pgTop+over.scroller.y); - over.scroller.timer = setTimeout("repositionOver()", over.scroller.refresh); -} - -//////// -// PLUGIN REGISTRATIONS -//////// -registerRunTimeFunction(setScrollVariables); -registerCmdLineFunction(parseScrollExtras); -registerHook("hideObject",cancelScroll,FAFTER); -registerHook("placeLayer",scroll_placeLayer,FREPLACE); -if (olInfo.meets(4.10)) registerNoParameterCommands('followscroll'); -} diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_hideform.js b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_hideform.js deleted file mode 100644 index aa099d9c82b..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_hideform.js +++ /dev/null @@ -1,135 +0,0 @@ -//\///// -//\ overLIB Hide Form Plugin -//\ -//\ Uses an iframe shim to mask system controls for IE v5.5 or higher as suggested in -//\ http://dotnetjunkies.com/weblog/jking/posts/488.aspx -//\ This file requires overLIB 4.10 or later. -//\ -//\ overLIB 4.05 - You may not remove or change this notice. -//\ Copyright Erik Bosrup 1998-2004. All rights reserved. -//\ Contributors are listed on the homepage. -//\ See http://www.bosrup.com/web/overlib/ for details. -// $Revision: 1.20 $ $Date: 2004/11/25 21:27:19 $ -//\///// -//\mini -if (typeof olInfo == 'undefined' || typeof olInfo.meets == 'undefined' || !olInfo.meets(4.10)) alert('overLIB 4.10 or later is required for the HideForm Plugin.'); -else { - -// Function which generates the popup with an IFRAME shim -function generatePopUp(content) { - if(!olIe4||olOp||!olIe55||(typeof o3_shadow != 'undefined' && o3_shadow)||(typeof o3_bubble != 'undefined' && o3_bubble)) return; - - var wd,ht,txt, zIdx = 0; - - wd = parseInt(o3_width); - ht = over.offsetHeight; - txt = backDropSource(wd,ht,zIdx++); - txt += '<div style="position: absolute; top: 0; left: 0; width: '+ wd+'px; z-index: ' + zIdx + ';">' + content + '</div>'; - layerWrite(txt); -} - -// Code for the IFRAME which is used in other places -function backDropSource(width, height, Z) { - return '<iframe frameborder="0" scrolling="no" src="javascript:false;" width="' + width + '" height="' + height + '" style="z-index: ' + Z + '; filter: Beta(Style=0,Opacity=0);"></iframe>'; -} - -// Hides SELECT boxes that will be under the popup -// Checking Gecko version number to try to include other browsers based on the Gecko engine -function hideSelectBox() { - if(olNs4 || olOp || olIe55) return; - var px, py, pw, ph, sx, sw, sy, sh, selEl, v; - - if(olIe4) v = 0; - else { - v = navigator.userAgent.match(/Gecko\/(\d{8})/i); - if(!v) return; // return if no string match - v = parseInt(v[1]); - } - - if (v < 20030624) { // versions less than June 24, 2003 were earlier Netscape browsers - px = parseInt(over.style.left); - py = parseInt(over.style.top); - pw = o3_width; - ph = (o3_aboveheight ? parseInt(o3_aboveheight) : over.offsetHeight); - selEl = (olIe4) ? o3_frame.document.all.tags("SELECT") : o3_frame.document.getElementsByTagName("SELECT"); - for (var i=0; i<selEl.length; i++) { - if(!olIe4 && selEl[i].size < 2) continue; // Not IE and SELECT size is 1 or not specified - sx = pageLocation(selEl[i],'Left'); - sy = pageLocation(selEl[i],'Top'); - sw = selEl[i].offsetWidth; - sh = selEl[i].offsetHeight; - if((px+pw) < sx || px > (sx+sw) || (py+ph) < sy || py > (sy+sh)) continue; - selEl[i].isHidden = 1; - selEl[i].style.visibility = 'hidden'; - } - } -} - -// Shows previously hidden SELECT Boxes -function showSelectBox() { - if(olNs4 || olOp || olIe55) return; - var selEl, v; - - if(olIe4) v = 0; - else { - v = navigator.userAgent.match(/Gecko\/(\d{8})/i); - if(!v) return; - v = parseInt(v[1]); - } - - if(v < 20030624) { - selEl = (olIe4) ? o3_frame.document.all.tags("SELECT") : o3_frame.document.getElementsByTagName("SELECT"); - for (var i=0; i<selEl.length; i++) { - if(typeof selEl[i].isHidden != 'undefined' && selEl[i].isHidden) { - selEl[i].isHidden = 0; - selEl[i].style.visibility = 'visible'; - } - } - } -} - -// function gets the total offset properties of an element -// this same function occurs in overlib_mark.js. -function pageLocation(o,t){ - var x = 0 - - while(o.offsetParent){ - x += o['offset'+t] - o = o.offsetParent - } - - x += o['offset'+t] - - return x -} - -// reset mouse move routine for NS7 but not NS7.1,Opera, or IE5.5+ -// It also bypasses Netscape 6 since the modifications mess up the display of popups -// and don't work anyways. -// Modify mouse move routine while loading so that hideSelectBox() -// can be called from the correct location -if (!(olNs4 || olOp || olIe55 || navigator.userAgent.indexOf('Netscape6') != -1)) { - var MMStr = olMouseMove.toString(); - var strRe = /(if\s*\(o3_allowmove\s*==\s*1.*\)\s*)/; - var f = MMStr.match(strRe); - - if (f) { - var ls = MMStr.search(strRe); - ls += f[1].length; - var le = MMStr.substring(ls).search(/[;|}]\n/); - MMStr = MMStr.substring(0,ls) + ' { runHook("placeLayer",FREPLACE); if(olHideForm) hideSelectBox(); ' + MMStr.substring(ls + (le != -1 ? le+3 : 0)); - document.writeln('<script type="text/javascript">\n<!--\n' + MMStr + '\n//-->\n</' + 'script>'); - } - - f = capExtent.onmousemove.toString().match(/function[ ]+(\w*)\(/); - if (f&&f[1] != 'anonymous') capExtent.onmousemove = olMouseMove; -} - - -//////// -// PLUGIN REGISTRATIONS -//////// -registerHook("createPopup",generatePopUp,FAFTER); -registerHook("hideObject",showSelectBox,FAFTER); -olHideForm=1; -} diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_setonoff.js b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_setonoff.js deleted file mode 100644 index 16fabfef63e..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_setonoff.js +++ /dev/null @@ -1,101 +0,0 @@ -//\///// -//\ overLIB Set On/Off Plugin -//\ This file requires overLIB 4.10 or later. -//\ -//\ overLIB 4.10 - You may not remove or change this notice. -//\ Copyright Erik Bosrup 1998-2003. All rights reserved. -//\ Contributors are listed on the homepage. -//\ See http://www.bosrup.com/web/overlib/ for details. -// $Revision: 1.3 $ $Date: 2004/11/25 21:27:19 $ -// -//\///// -//\mini -//////// -// PRE-INIT -// Ignore these lines, configuration is below. -//////// -if (typeof olInfo == 'undefined' || typeof olInfo.meets == 'undefined' || !olInfo.meets(4.10)) alert('overLIB 4.10 or later is required for the Set On/Off Plugin.'); -else { -registerCommands('seton, setoff'); -var olSetType; -// END OF CONFIGURATION -// Don't change anything below this line, all configuration is above. -//////// -// PLUGIN FUNCTIONS -//////// -// Set runtime variables -function setOnOffVariables() { - olSetType = 0; -} -// Parses Set On/Off Parameters -function parseOnOffExtras(pf, i, ar) { - var k = i, v; - - if (k < ar.length) { - if (ar[k] == SETON||ar[k] == SETOFF) { olSetType = 1; k = opt_MULTICOMMANDS(++k, ar); return k; } - } - - return -1; -} -/////// -// HELPER FUNCTIONS -/////// -// searches arg list for COMMAND; -function hasCommand(istrt, args, COMMAND) { - for (var i = istrt; i < args.length; i++) { - if (typeof args[i] == 'number' && args[i] == COMMAND) return i; - } - - return -1; -} -// scans for toggle like commands to be forced ON/OFF -function scanCommandSet(pf, args) { - var k = -1, j, je; - - if (olSetType) { - // search for SETON command - while ((k = hasCommand(++k, args, SETON)) < args.length && k > -1) { - je = opt_MULTICOMMANDS(k + 1, args); - for (j = k + 1; j < (k + je); j++) setNoParamCommand(1, pf, args[j]); - k += (je - 1); - } - // search for SETOFF command - k = -1; - while ((k = hasCommand(++k, args, SETOFF)) < args.length && k > -1) { - je = opt_MULTICOMMANDS(k + 1, args); - for (j = k + 1; j < (k + je); j++) setNoParamCommand(0, pf, args[j]); - k += (je - 1); - } - } - - return true; -} -var olRe; -// set command according to whichType (0 or 1) -function setNoParamCommand(whichType, pf, COMMAND) { - var v = pms[COMMAND - 1 - pmStart]; - - if(pmt && !olRe) olRe = eval('/' + pmt.split(',').join('|') + '/'); - if (pf != 'ol_' && /capturefirst/.test(v)) return; // no o3_capturefirst variable - if (pf != 'ol_' && /wrap/.test(v) && eval(pf + 'wrap') && (whichType == 0)) { - nbspCleanup(); // undo wrap effects since checked after all parsing - o3_width = ol_width; - } - - if (olRe.test(v)) eval(pf + v + '=' + ((whichType && COMMAND == AUTOSTATUSCAP) ? whichType++ : whichType)); -} -function opt_MULTICOMMANDS(i, ar) { - var k = i; - - while (k < ar.length && typeof ar[k] == 'number' && ar[k] > pmStart) {k++; if (ar[k - 1] == 'SETON'||ar[k - 1] == 'SETOFF') break;} - k -= (k < ar.length ? 2 : 1); - - return k; -} -//////// -// PLUGIN REGISTRATIONS -//////// -registerRunTimeFunction(setOnOffVariables); -registerCmdLineFunction(parseOnOffExtras); -registerPostParseFunction(scanCommandSet); -}
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_shadow.js b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_shadow.js deleted file mode 100644 index 301136486ea..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/overlib_shadow.js +++ /dev/null @@ -1,270 +0,0 @@ -//\///// -//\ overLIB Shadow Plugin -//\ This file requires overLIB 4.10 or later. -//\ -//\ overLIB 4.05 - You may not remove or change this notice. -//\ Copyright Erik Bosrup 1998-2003. All rights reserved. -//\ Contributors are listed on the homepage. -//\ See http://www.bosrup.com/web/overlib/ for details. -// $Revision: 1.15 $ $Date: 2004/11/25 21:27:19 $ -//\///// -//\mini - -//////// -// PRE-INIT -// Ignore these lines, configuration is below. -//////// -if (typeof olInfo == 'undefined' || typeof olInfo.meets == 'undefined' || !olInfo.meets(4.10)) alert('overLIB 4.10 or later is required for the Shadow Plugin.'); -else { -registerCommands('shadow,shadowcolor,shadowimage,shadowopacity,shadowx,shadowy'); - - -//////// -// DEFAULT CONFIGURATION -// You don't have to change anything here if you don't want to. All of this can be -// changed on your html page or through an overLIB call. -//////// -if (typeof ol_shadowadjust=='undefined') var ol_shadowadjust=2; // for Ns4.x only -if (typeof ol_shadow=='undefined') var ol_shadow=0; -if (typeof ol_shadowcolor=='undefined') var ol_shadowcolor='#CCCCCC'; -if (typeof ol_shadowimage=='undefined') var ol_shadowimage=''; -if (typeof ol_shadowopacity=='undefined') var ol_shadowopacity=0; -if (typeof ol_shadowx=='undefined') var ol_shadowx=5; -if (typeof ol_shadowy=='undefined') var ol_shadowy=5; - -//////// -// END OF CONFIGURATION -// Don't change anything below this line, all configuration is above. -//////// - - - - -//////// -// INIT -//////// -// Runtime variables init. Don't change for config! -var o3_shadow=0; -var o3_shadowcolor="#cccccc"; -var o3_shadowimage=''; -var o3_shadowopacity=0; -var o3_shadowx=5; -var o3_shadowy=5; -var bkSet=0; // Needed for this effect in NS4 - - - -// Function which sets runtime variables to their default values -function setShadowVariables() { - o3_shadow=ol_shadow; - o3_shadowcolor=ol_shadowcolor; - o3_shadowimage=ol_shadowimage; - o3_shadowopacity=ol_shadowopacity; - o3_shadowx=ol_shadowx; - o3_shadowy=ol_shadowy; -} - - -// Parses shadow commands -function parseShadowExtras(pf,i,ar) { - var k = i, v; - - if (k < ar.length) { - if (ar[k]==SHADOW) { eval(pf +'shadow=('+pf+'shadow==0) ? 1 : 0'); return k; } - if (ar[k]==SHADOWCOLOR) { eval(pf+'shadowcolor="'+ar[++k]+'"'); return k; } - if (ar[k]==SHADOWOPACITY) {v=ar[++k]; eval(pf+'shadowopacity='+(olOp ? 0 : v)); return k; } - if (ar[k]==SHADOWIMAGE) { eval(pf+'shadowimage="'+ar[++k]+'"'); return k; } - if (ar[k]==SHADOWX) { eval(pf+'shadowx='+ar[++k]); return k; } - if (ar[k]==SHADOWY) { eval(pf+'shadowy='+ar[++k]); return k; } - } - - return -1; -} - - -// Function for MOUSEOUT/MOUSEOFF feature with shadow -function shadow_cursorOff() { - var left= parseInt(over.style.left); - var top=parseInt(over.style.top); - var right=left+(o3_shadow ? o3_width : over.offsetWidth); - var bottom=top+(o3_shadow ? o3_aboveheight : over.offsetHeight); - - if (o3_x < left || o3_x > right || o3_y < top || o3_y > bottom) return true; - return false; -} - -// Pre-hide processing to clean-up. -function checkShadowPreHide() { - if (o3_shadow && o3_shadowopacity) cleanUpShadowEffects(); - if (o3_shadow && (olIe4 && isMac) ) over.style.pixelWidth=over.style.pixelHeight = 0; -} - - -// Funciton that creates the actual shadow -function generateShadow(content) { - var wd, ht, X = 0, Y = 0, zIdx = 0, txt, dpObj, puObj, bS= '', aPos, posStr=new Array(); - - if (!o3_shadow || (o3_shadowx == 0 && o3_shadowy == 0)) return; - - X = Math.abs(o3_shadowx); - Y = Math.abs(o3_shadowy); - wd = parseInt(o3_width); - ht = (olNs4) ? over.clip.height : over.offsetHeight; - - if (o3_shadowx == 0) { - if (o3_shadowy < 0) { - posStr[0]=' left:0; top: 0'; - posStr[1]=' left:0; top: '+Y+'px'; - } else if (o3_shadowy > 0) { - posStr[0]=' left:0; top: '+Y+'px'; - posStr[1]=' left:0; top:0'; - } - } else if (o3_shadowy == 0) { - if (o3_shadowx < 0) { - posStr[0]=' left:0; top: 0'; - posStr[1]=' left: '+X+'px'; - } else if (o3_shadowx > 0) { - posStr[0]=' left: '+ X+'px; top: 0'; - posStr[1]=' left:0; top:0'; - } - } else if (o3_shadowx > 0) { - if (o3_shadowy > 0) { - posStr[0]=' left:'+ X+'px; top:'+Y+'px'; - posStr[1]=' left:0; top:0'; - } else if (o3_shadowy < 0) { - posStr[0]=' left:'+X+'px; top:0'; - posStr[1]=' left:0; top: '+Y+'px'; - } - } else if (o3_shadowx < 0) { - if (o3_shadowy > 0) { - posStr[0]=' left:0; top:'+Y+'px'; - posStr[1]=' left:'+X+'px; top:0'; - } else if (o3_shadowy < 0) { - posStr[0]=' left:0; top:0'; - posStr[1]=' left:'+X+'px; top:'+Y+'px'; - } - } - - txt = (olNs4) ? '<div id="backdrop"></div>' : ((olIe55&&olHideForm) ? backDropSource(wd+X,ht+Y,zIdx++) : '') + '<div id="backdrop" style="position: absolute;'+posStr[0]+'; width: '+wd+'px; height: '+ht+'px; z-index: ' + (zIdx++) + '; '; - - if (o3_shadowimage) { - bS='background-image: url('+o3_shadowimage+');'; - if (olNs4) bkSet=1; - } else { - bS='background-color: '+o3_shadowcolor +';'; - if (olNs4) bkSet=2; - } - - if (olNs4) { - txt += '<div id="PUContent">'+content+'</div>'; - } else { - txt += bS+'"></div><div id="PUContent" style="position: absolute;'+posStr[1]+'; width: '+ wd+'px; z-index: '+(zIdx++)+';">'+content+'</div>'; - } - - layerWrite(txt); - - if (olNs4 && bkSet) { - dpObj = over.document.layers['backdrop']; - if (typeof dpObj == 'undefined') return; // if shadow layer not found, then content layer won't be either - - puObj = over.document.layers['PUContent']; - wd = puObj.clip.width; - ht = puObj.clip.height; - aPos = posStr[0].split(';'); - - dpObj.clip.width = wd; - dpObj.clip.height = ht; - dpObj.left = parseInt(aPos[0].split(':')[1]); - dpObj.top = parseInt(aPos[1].split(':')[1]); - - dpObj.bgColor = (bkSet == 1) ? null : o3_shadowcolor; - dpObj.background.src = (bkSet==2) ? null : o3_shadowimage; - dpObj.zIndex = 0; - - aPos = posStr[1].split(';'); - puObj.left = parseInt(aPos[0].split(':')[1]); - puObj.top = parseInt(aPos[1].split(':')[1]); - puObj.zIndex = 1; - - } else { - puObj = (olIe4 ? o3_frame.document.all['PUContent'] : o3_frame.document.getElementById('PUContent')); - dpObj = (olIe4 ? o3_frame.document.all['backdrop'] : o3_frame.document.getElementById('backdrop')); - ht = puObj.offsetHeight; - dpObj.style.height = ht + 'px'; - - if (o3_shadowopacity) { - var op = o3_shadowopacity; - op = (op <= 100 ? op : 100); - - setBrowserOpacity(op,dpObj); - } - } - - // Set popup's new width and height values here so they are available in placeLayer() - o3_width = wd+X; - o3_aboveheight = ht+Y; -} - - -//////// -// SUPPORT FUNCTIONS -//////// - -// Cleans up opacity settings if any. -function cleanUpShadowEffects() { - if (olNs4 || olOp) return; - var dpObj=(olIe4 ? o3_frame.document.all['backdrop'] : o3_frame.document.getElementById('backdrop')); - cleanUpBrowserOpacity(dpObj); -} - -// multi browser opacity support -function setBrowserOpacity(op,lyr){ - if (olNs4||!op) return; // if Ns4.x or opacity not given return; - lyr=(lyr) ? lyr : over; - if (olIe4&&typeof lyr.filters != 'undefined') { - lyr.style.filter='Alpha(Opacity='+op+')'; - lyr.filters.alpha.enabled=true; - } else { - var sOp=(typeof(lyr.style.MozOpacity)!='undefined') ? 'MozOpacity' : (typeof(lyr.style.KhtmlOpacity)!='undefined' ? 'KhtmlOpacity' : (typeof(lyr.style.opacity)!='undefined' ? 'opacity' : '')); - if (sOp) eval('lyr.style.'+sOp+'=op/100'); - } -} - -// multi-browser Opacity cleanup -function cleanUpBrowserOpacity(lyr) { - if (olNs4) return; - lyr=(lyr) ? lyr : over; - if (olIe4&&(typeof lyr.filters != 'undefined'&&lyr.filters.alpha.enabled)) { - lyr.style.filter='Alpha(Opacity=100)'; - lyr.filters.alpha.enabled=false; - } else { - var sOp=(typeof(lyr.style.MozOpacity)!='undefined') ? 'MozOpacity' : (typeof(lyr.style.KhtmlOpacity)!='undefined' ? 'KhtmlOpacity' : (typeof(lyr.style.opacity)!='undefined' ? 'opacity' : '')); - if (sOp) eval('lyr.style.'+sOp+'=1.0'); - } -} - -// This routine is needed only for Ns4.x to allow use of popups with dropshadows and CSSCLASS at the same time on a page -function shadowAdjust() { - if (!olNs4) return; - var fac = ol_shadowadjust; - if (olNs4) { - document.write('<style type="text/css">\n<!--\n'); - document.write('#backdrop, #PUContent {position: absolute; left: '+fac*o3_shadowx+'px; top: '+fac*o3_shadowy+'px; }\n'); - document.write('-->\n<' + '\/style>'); - } -} - -//////// -// PLUGIN REGISTRATIONS -//////// -var before = (typeof rmrkPreface!='undefined' ? rmrkPreface : null); - -registerRunTimeFunction(setShadowVariables); -registerCmdLineFunction(parseShadowExtras); -registerHook("cursorOff",shadow_cursorOff,FREPLACE); -registerHook("hideObject",checkShadowPreHide,FBEFORE); -registerHook("createPopup",generateShadow,FAFTER,before); -if (olInfo.meets(4.10)) registerNoParameterCommands('shadow'); - -if (olNs4) shadowAdjust(); // write style rules for proper support of Ns4.x -}
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html-js.js b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html-js.js deleted file mode 100644 index 99f6d0db7ca..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html-js.js +++ /dev/null @@ -1,5 +0,0 @@ -tex4ht=new Array() ; //2010-04-07 11:32:00 -tex4ht.fn1x0="<div class=\"js\"><span class=\"footnote-mark\"><a id=\"fn1x0\"> <sup class=\"textsuperscript\">1</sup></a></span><span class=\"cmr-8\">just to show conversion into html</span></div>"; - ol_hauto = 1; - - diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html.css b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html.css deleted file mode 100644 index 75bc1b5e46a..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html.css +++ /dev/null @@ -1,117 +0,0 @@ - -/* start css.sty */ -.cmr-17{font-size:170%;} -.cmr-12{font-size:120%;} -.cmr-8{font-size:80%;} -.cmr-9{font-size:90%;} -p.noindent { text-indent: 0em } -td p.noindent { text-indent: 0em; margin-top:0em; } -p.nopar { text-indent: 0em; } -p.indent{ text-indent: 1.5em } -@media print {div.crosslinks {visibility:hidden;}} -a img { border-top: 0; border-left: 0; border-right: 0; } -center { margin-top:1em; margin-bottom:1em; } -td center { margin-top:0em; margin-bottom:0em; } -.Canvas { position:relative; } -img.math{vertical-align:middle;} -li p.indent { text-indent: 0em } -li p:first-child{ margin-top:0em; } -li p:last-child, li div:last-child { margin-bottom:0.5em; } -li p~ul:last-child, li p~ol:last-child{ margin-bottom:0.5em; } -.enumerate1 {list-style-type:decimal;} -.enumerate2 {list-style-type:lower-alpha;} -.enumerate3 {list-style-type:lower-roman;} -.enumerate4 {list-style-type:upper-alpha;} -div.newtheorem { margin-bottom: 2em; margin-top: 2em;} -.obeylines-h,.obeylines-v {white-space: nowrap; } -div.obeylines-v p { margin-top:0; margin-bottom:0; } -.overline{ text-decoration:overline; } -.overline img{ border-top: 1px solid black; } -td.displaylines {text-align:center; white-space:nowrap;} -.centerline {text-align:center;} -.rightline {text-align:right;} -div.verbatim {font-family: monospace; white-space: nowrap; text-align:left; clear:both; } -.fbox {padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } -div.fbox {display:table} -div.center div.fbox {text-align:center; clear:both; padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } -div.minipage{width:100%;} -div.center, div.center div.center {text-align: center; margin-left:1em; margin-right:1em;} -div.center div {text-align: left;} -div.flushright, div.flushright div.flushright {text-align: right;} -div.flushright div {text-align: left;} -div.flushleft {text-align: left;} -.underline{ text-decoration:underline; } -.underline img{ border-bottom: 1px solid black; margin-bottom:1pt; } -.framebox-c, .framebox-l, .framebox-r { padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } -.framebox-c {text-align:center;} -.framebox-l {text-align:left;} -.framebox-r {text-align:right;} -span.thank-mark{ vertical-align: super } -span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; } -div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } -table.tabular td p{margin-top:0em;} -table.tabular {margin-left: auto; margin-right: auto;} -td p:first-child{ margin-top:0em; } -td p:last-child{ margin-bottom:0em; } -div.td00{ margin-left:0pt; margin-right:0pt; } -div.td01{ margin-left:0pt; margin-right:5pt; } -div.td10{ margin-left:5pt; margin-right:0pt; } -div.td11{ margin-left:5pt; margin-right:5pt; } -table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } -td.td00{ padding-left:0pt; padding-right:0pt; } -td.td01{ padding-left:0pt; padding-right:5pt; } -td.td10{ padding-left:5pt; padding-right:0pt; } -td.td11{ padding-left:5pt; padding-right:5pt; } -table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } -.hline hr, .cline hr{ height : 1px; margin:0px; } -.tabbing-right {text-align:right;} -span.TEX {letter-spacing: -0.125em; } -span.TEX span.E{ position:relative;top:0.5ex;left:-0.0417em;} -a span.TEX span.E {text-decoration: none; } -span.LATEX span.A{ position:relative; top:-0.5ex; left:-0.4em; font-size:85%;} -span.LATEX span.TEX{ position:relative; left: -0.4em; } -div.float, div.figure {margin-left: auto; margin-right: auto;} -div.float img {text-align:center;} -div.figure img {text-align:center;} -.marginpar {width:20%; float:right; text-align:left; margin-left:auto; margin-top:0.5em; font-size:85%; text-decoration:underline;} -.marginpar p{margin-top:0.4em; margin-bottom:0.4em;} -table.equation {width:100%;} -.equation td{text-align:center; } -td.equation { margin-top:1em; margin-bottom:1em; } -td.equation-label { width:5%; text-align:center; } -td.eqnarray4 { width:5%; white-space: normal; } -td.eqnarray2 { width:5%; } -table.eqnarray-star, table.eqnarray {width:100%;} -div.eqnarray{text-align:center;} -div.array {text-align:center;} -div.pmatrix {text-align:center;} -table.pmatrix {width:100%;} -span.pmatrix img{vertical-align:middle;} -div.pmatrix {text-align:center;} -table.pmatrix {width:100%;} -span.bar-css {text-decoration:overline;} -img.cdots{vertical-align:middle;} -.partToc a, .partToc, .likepartToc a, .likepartToc {line-height: 200%; font-weight:bold; font-size:110%;} -.index-item, .index-subitem, .index-subsubitem {display:block} -div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; text-align:left;} -div.caption span.id{font-weight: bold; white-space: nowrap; } -h1.partHead{text-align: center} -p.bibitem { text-indent: -2em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } -p.bibitem-p { text-indent: 0em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } -.paragraphHead, .likeparagraphHead { margin-top:2em; font-weight: bold;} -.subparagraphHead, .likesubparagraphHead { font-weight: bold;} -.quote {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; margin-right:1em; text-align:justify;} -.verse{white-space:nowrap; margin-left:2em} -div.maketitle {text-align:center;} -h2.titleHead{text-align:center;} -div.maketitle{ margin-bottom: 2em; } -div.author, div.date {text-align:center;} -div.thanks{text-align:left; margin-left:10%; font-size:85%; font-style:italic; } -div.author{white-space: nowrap;} -.quotation {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; } -.abstract p {margin-left:5%; margin-right:5%;} -div.abstract {width:100%;} -.js {text-indent:0; background-color:aqua; color:black; border:solid 1px black; margin:2pt; width:99%;} -.js p, .js p.bibitem , .js p.bibitem-p {text-indent:0; background-color:aqua; color:black; margin:2pt;} -/* end css.sty */ - diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html.html b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html.html deleted file mode 100644 index 58961646940..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html.html +++ /dev/null @@ -1,46 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd--> -<html xmlns="http://www.w3.org/1999/xhtml" -> -<head><title>Sample for conversion into html</title> -<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> -<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" /> -<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" /> -<!-- xhtml,mouseover,html --> -<meta name="src" content="tooltips2html.tex" /> -<meta name="date" content="2010-04-07 11:32:00" /> -<link rel="stylesheet" type="text/css" href="tooltips2html.css" /> -<script type="text/javascript" src="tooltips2html-js.js"></script> -<script type="text/javascript" src="overlib.js"><!-- overLIB (c) Erik Bosrup --></script> <!--http://www.bosrup.com/web/overlib/--></head><body -><div id="overDiv" style="position:absolute; visibility:hidden; z-index:1000;"></div> - <div class="maketitle"> - - - - - - - -<h2 class="titleHead">Sample for conversion into html</h2> -<div class="author" ><span -class="cmr-12">Robert Ma</span><span -class="cmr-12">ř</span><span -class="cmr-12">ík</span></div><br /> -<div class="date" ><span -class="cmr-12">April 7, 2010</span></div> - </div> -<!--l. 55--><p class="indent" > This is the sample document<span class="footnote-mark"><!--\def\jstoday{2010-04-07 11:32:00} \input onmouseover.4ht <js>--> <a -href="tooltips2html2.html#fn1x0" -onmouseover="tex4ht.body=tex4ht.fn1x0; tex4ht.caption='1'; return overlib(tex4ht.body,FULLHTML);" -onmouseout="nd();" - - ><sup class="textsuperscript">1</sup></a></span><a - id="x1-2f1"></a> . -</p><!--l. 57--><p class="indent" > Here we use small <a href="javascript:void(0);" onmouseover="picturettp='<img src=images/ttp-1.jpg>'; return overlib(picturettp, FULLHTML);" onmouseout="nd();">tooltip</a> . </p> -</body></html> -<!--</js>--> - - - diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html.pdf b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html.pdf Binary files differdeleted file mode 100644 index ed99398f142..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html.pdf +++ /dev/null diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html.tex b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html.tex deleted file mode 100644 index f94558fa2f3..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html.tex +++ /dev/null @@ -1,58 +0,0 @@ -% compile with the following command to get html: -% htlatex tooltips2html.tex "xhtml,mouseover" -% -% compile with the following command to get pdf: -% pdflatex tooltips2html.tex && pdflatex tooltips2html.tex -% - -\documentclass{article} -\usepackage{color} - -\ifx\ifHtml\undefined -\usepackage[mouseover,movetips,filename=logo]{fancytooltips} -\hypersetup{pdfborder=0 0 0} -\else -%%%%% here we define necessary macros for translatio into html -\makeatletter -\def\tooltipname#1#2{\expandafter\xdef\csname FancyToolTip@#1\endcsname{#2}} - -\def\FindTipNumber#1{\expandafter\ifx \csname FancyToolTip@#1\endcsname\relax - #1\else\csname FancyToolTip@#1\endcsname\fi} - -\def\checkTipNumber#1{\expandafter\ifx - \csname FancyToolTip@#1\endcsname\relax \PackageWarning{fancytooltips}{No - framenumber is assigned to keyword #1. I assume that #1 is the - number of the frame.}% - \fi} - -\makeatother -\newcommand\TooltipPage[2]{\relax} - -\IfFileExists{\jobname.tips}{\input{\jobname.tips}}% - {\PackageWarning{fancytooltips}{No file \jobname.tips! - Your keywords for tooltips will not work!}} - -\newcount\tipnumbercount - -\def\tooltip#1#2{\edef\TipNumber{\FindTipNumber{#2}} -\expandafter\tipnumbercount\TipNumber -\edef\temp{images/ttp-\the\tipnumbercount.jpg} -\HCode{ -<a href="javascript:void(0);" onmouseover="picturettp='<img src=\temp>'; return overlib(picturettp, FULLHTML);" onmouseout="nd();">#1</a> -} -} -%%%%%% -\fi - - -\begin{document} - -\title{Sample for conversion into html} -\author{Robert Ma\v r\'\i k} -\date{\today} -\maketitle - -This is the sample document\footnote{just to show conversion into html}. - -Here we use small \tooltip{tooltip}{logo}. -\end{document} diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html.tips b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html.tips deleted file mode 100644 index e4c298b2242..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html.tips +++ /dev/null @@ -1 +0,0 @@ -\tooltipname{logo}{1} diff --git a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html2.html b/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html2.html deleted file mode 100644 index 1d1aa359194..00000000000 --- a/Master/texmf-dist/doc/latex/fancytooltips/examples/tex4ht/tooltips2html2.html +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-1" ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd--> -<html xmlns="http://www.w3.org/1999/xhtml" -> -<head><title></title> -<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> -<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" /> -<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" /> -<!-- xhtml,mouseover,html --> -<meta name="src" content="tooltips2html.tex" /> -<meta name="date" content="2010-04-07 11:32:00" /> -<link rel="stylesheet" type="text/css" href="tooltips2html.css" /> -<script type="text/javascript" src="tooltips2html-js.js"></script> -<script type="text/javascript" src="overlib.js"><!-- overLIB (c) Erik Bosrup --></script> <!--http://www.bosrup.com/web/overlib/--></head><body -><div id="overDiv" style="position:absolute; visibility:hidden; z-index:1000;"></div> - <div><!--<footnote>fn1x0=<div class="js">--><span class="footnote-mark"><a - id="fn1x0"> <sup class="textsuperscript">1</sup></a></span><span -class="cmr-8">just to show conversion into html</span><!--</div></footnote> ---></div> - -</body></html> diff --git a/Master/texmf-dist/doc/latex/fancytooltips/fancy-preview b/Master/texmf-dist/doc/latex/fancytooltips/fancy-preview new file mode 100755 index 00000000000..bbfb3409201 --- /dev/null +++ b/Master/texmf-dist/doc/latex/fancytooltips/fancy-preview @@ -0,0 +1,448 @@ +#!/usr/bin/env perl +# +# Copyright (C) 2012 by Robert Marik <marik@mendelu.cz> +# ------------------------------------------------------ +# +# This file may be distributed and/or modified under the conditions of +# the LaTeX Project Public License, either version 1.2 of this license +# or (at your option) any later version. The latest version of this +# license is in: +# +# http://www.latex-project.org/lppl.txt +# +# and version 1.2 or later is part of all distributions of LaTeX +# version 1999/12/01 or later. +# +# fancy-preview +# ------------- +# +# This is a script which can be used to extract displayed equations, +# theorem-like environments, figures and bibliography references and +# attach this material as tooltip to LaTeX \ref, \eqref and \cite +# comand. This has been requested by several (pdf)(La)TeX users. See +# http://tex.stackexchange.com/questions/15356/showing-the-bibliographic-entry-in-a-popup-when-you-hover-over-the-citation-key +# for some discussion and papers +# http://permalink.gmane.org/gmane.comp.tex.pdftex/3898 and +# http://www.math.huji.ac.il/~erezla/papers/continuity_semisimple.pdf +# as demos of interactive PDF. +# +# Demos for the current script are at +# http://user.mendelu.cz/marik/fancy-preview site. Basicaly, you can +# find there PDF files with hyperref links. Each link is followed by a +# button. This button is invisible in mathematical papers and blue +# soap in presentations. +# +# 1. add "\usepackage{hyperref}" to the preamble of your document (say +# filename.tex), +# +# 2. add blank line after each \bibitem command, +# +# 3. compile with command "bash fancy-preview filename" i.e. no tex +# extension is used in the command line +# +# 4. You may customize this script. +# +# The script has been tested on Linux, Ubuntu 12.04,TeXlive 2011. +# +# It works as follows: +# 1. We extract desired environments in two runs. We crop the PDF +# files and save the information relatex labels from aux file. +# 2. We join the files together, we add some background and graphics +# to the tooltips. +# +# +# Known bugs, limitations. +# ------------------------ +# +# * Do not use tags involving \ref command, do not use something like +# \tag{\ref{someting}-b} inside equation environment. +# * Do not use the word tocindent in the labels. +# * Do not use elsart class. Use for example article or elsarticle +# class. +# * Each bibitem must be finished by a blank line. +# +# +# History +# ------- +# +# June 12, 2012: advanced posibilities for configuration +# May 24, 2012: bash script converted to Perl for better portability, tests on MS Windows. +# May 7, 2012: initial Linux version in bash +# +use strict; +use Getopt::Long; + +my $filename = $ARGV[0]; +my $filename_noext = $filename; +$filename_noext =~ s/\.tex//; +my $aux_file=$filename_noext.".aux"; +my @tempfilenames=($filename_noext.".aux"); +my %latex =(); + +# Setting for two passes of preview.sty +$latex{'a'}='\makeatletter\def\nononotags{\def\@eqnnum{\relax}\def\tagform@##1{}}\makeatother\AtBeginDocument{\usepackage[pdftex,active,tightpage,displaymath]{preview}\nononotags}'; +$latex{'b'}='\AtEndDocument{\clearpage}\AtBeginDocument{\usepackage[pdftex,active,tightpage]{preview}\setlength\PreviewBorder{5pt}}'; + +# Do not use third pass of preview.sty by default +$latex{'c'}=''; +$latex{'a_extra'}=''; +$latex{'b_extra'}=''; +$latex{'pass_order'}="acb"; + +# Hacks to get references (in the first pass). +# IMPORTANT: each bibitem must be finished by a blank line. +$latex{'preview_bibitem'}='\AtBeginDocument{\newenvironment{fakebibitem}{\begin{minipage}{0.75\textwidth}}{\end{minipage}}\PreviewEnvironment{fakebibitem}\renewcommand\bibitem[2][]{\BIBITEM {#2}}\def\BIBITEM#1#2\par{\begin{fakebibitem} #2 \label{fancy:cite:#1}\end{fakebibitem}}}'; +$latex{'preview_biblatex'}='\AtBeginDocument{\PreviewEnvironment{fakebibitem}\def\fancycitation#1{\begin{fakebibitem}\setbox0=\hbox{\parbox{0.75\textwidth}{\fullcite{#1}\label{fancy:cite:#1}}}\pdfpagewidth=\wd0\pdfpageheight=\ht0\advance\pdfpageheight by \dp0\copy0\end{fakebibitem}\newpage}}\AtEndDocument{\input '.$filename_noext.'-fancybib.tmp}'; + +# The environments for extraction in the second pass of preview.sty. +$latex{'environments'}="Theorem,theorem,lemma,corollary,definition"; +$latex{'snarfenvironments'}="figure"; + +# The variable with initial commands for all pdflatex calls. +$latex{'ini'}='\relax'; +my $pdflatex="pdflatex"; +my $bibtex="bibtex"; +my $pdfcrop="pdfcrop"; + +# Default options for final compilation with fancytooltips. Change +# "previewall" into "preview" to omit tooltips with target on the same +# page (useful for presentations). You may also set this option from +# the comand line. +my $fancy_options="previewall,nosoap"; +my $tooltipfile=""; +my $help=0; +my $version=0; +my $date="24.6.2012"; +my $versionnumber="0.2"; + +# The code used in premable. Should define macro \tooltipwraper which +# inserts the tooltip extracted in previous compilations into a box +# with nontransparent background +$latex{'tooltips_envelope_preamble'}='\usepackage{xcolor,tikz}\usetikzlibrary{shadows}\def\tooltipwraper#1{\begin{tikzpicture}\node[drop shadow,fill=yellow!30,draw=black!30, rounded corners=3pt,very thick]{#1};\end{tikzpicture}}'; + + +$latex{'biblatex'}=' +% from http://tex.stackexchange.com/questions/15356/showing-the-bibliographic-entry-in-a-popup-when-you-hover-over-the-citation-key/54831#54831 +% thanks to Audrey + +% Apply tooltip to "extratext" area just after inline citation links +\DeclareFieldFormat{bibhyperref}{% + \tooltip*{\bibhyperref{#1}}{fancy:cite:\thefield{entrykey}}} + +% Define new citation commands that replace citation links with tooltips +\DeclareFieldFormat{bibtooltip}{\tooltip{#1}{fancy:cite:\thefield{entrykey}}} +\newrobustcmd*{\tooltiphook}{% + \AtNextCite{\DeclareFieldAlias{bibhyperref}{bibtooltip}}} +\newrobustcmd*{\tooltipcite}{\tooltiphook\cite} +\newrobustcmd*{\tooltipcites}{\tooltiphook\cites} + +% Apply tooltip to instance where numeric-comp uses \bibhyperref instead +% of bibhyperref format +\makeatletter +\newbibmacro*{cite:dump:tooltip}{% + \ifnumgreater{\value{cbx@tempcnta}}{0} + {\ifnumgreater{\value{cbx@tempcnta}}{1} + {\bibrangedash} + {\multicitedelim}% + \tooltip* + {\bibhyperref[\cbx@lastkey]{% + \ifdef\cbx@lastprefix + {\printtext[prefixnumber]{\cbx@lastprefix}} + {}% + \printtext[labelnumber]{\cbx@lastnumber}}} + {fancy:cite:\cbx@lastkey}} + {}% + \setcounter{cbx@tempcnta}{0}% + \global\undef\cbx@lastprefix} +\ifcsundef{abx@macro@\detokenize{cite:dump}} + {}{\renewbibmacro*{cite:dump}{\usebibmacro{cite:dump:tooltip}}} +\makeatother +'; + +my %options=(); +GetOptions ( +"fancy_options=s" => \$options{fancy_options}, +"pdfcrop=s" => \$options{pdfcrop}, +"tooltips=s" => \$options{tooltips}, +"ini_file=s" => \$options{ini_file}, +"version" => \$version, +"help" => \$help); + +if ($version) +{ + print "$versionnumber\n"; + exit(); +} + +if ($help) +{ + my $help_text=' +This is fancy-preview script (R. Marik, http://user.mendelu.cz/marik) +============================ + +The script converts LaTeX files into PDF files. The references are +followed by invisible buttons whih allow to show the target in a popup +window. + +The homepage (last version, documentation, tips for users, examples) +of the script is http://user.mendelu.cz/marik/fancy-preview + +OPTIONS: + +For detailed description see Section 3 of the manual to the +fancytooltips package. + + --fancy_options="text" text is passed as optional parameter to + fancytooltips package + + --pdfcrop="filename" program to crop the boundaries of PDF file + + --tooltips="filename" the file filename.pdf contains hand-created + tooltips and filename.tips optionally + keywords to acces these tooltips + + --ini_file="filename" ini file with the configuration + + --version prints version and exists + + --help prints help and exists + +EXAMPLES: +Compile file.tex + + perl fancy-preview file + +Compile file.tex, use pdfcrop2 to crop the boundary of PDF file, show +only previews where the target is on the different page + + ./fancy-preview file --fancy_options="preview" --pdfcrop="pdfcrop2" + +'; + print $help_text; + exit(); +} + + +#### Read configuration from ~/.fancy-preview.ini and ./fancy-preview.ini +use Config::IniFiles; +my($cfg); + +sub set_tex_variable +{ + if ($cfg->exists( 'latex', $_[0] )) {$latex{$_[0]}=$cfg->val( 'latex', $_[0]);} +} + +sub read_config +{ + if ( -e $_[0]) + { + $cfg = Config::IniFiles->new( -file => $_[0]); + if ($cfg->exists( 'main', 'pdfcrop' )) {$pdfcrop=$cfg->val( 'main', 'pdfcrop');} + if ($cfg->exists( 'main', 'fancy_options' )) {$fancy_options=$cfg->val( 'main', 'fancy_options');} + if ($cfg->exists( 'main', 'tooltips' )) {$tooltipfile=$cfg->val( 'main', 'tooltips');} + my @options=("tooltips_envelope_preamble","environments","snarfenvironments","a","a_extra","b","b_extra","c","ini","biblatex","pass_order"); + foreach my $current_option (@options) {set_tex_variable($current_option);} + } +} + +if ($options{ini_file}) +{ + read_config($options{ini_file}); +} +else +{ + read_config($ENV{"HOME"}."/.fancy-preview.ini"); + read_config("./fancy-preview.ini"); +} +#### end of configuration + +# command line overrides config file +if ($options{fancy_options}) {$fancy_options=$options{fancy_options}}; +if ($options{pdfcrop}) {$pdfcrop=$options{pdfcrop}}; +if ($options{tooltips}) {$tooltipfile=$options{tooltips}}; + +my $biblatex=0; + +# ----------------------------------------------------------------- +# We extract stuff from the TeX file, extract the label definition +# from aux file and crop the PDF file. Since pdfcrop from texlive +# creates large files, we allow customization (see +# http://tex.stackexchange.com/questions/42236/pdfcrop-generates-larger-file +# ) + +unlink ("$filename_noext.aux"); + +# The first compilation to create numbers for equations, theorems, figures, ... +system("$pdflatex \"$latex{ini} \\input $filename\""); + + +# We test if the file uses biblatex. If not, thebibliography is supposed. +open(LOG, $filename_noext.".log"); +my @log_data=<LOG>; +my @log_tmp = grep /^Package: biblatex/, @log_data; +my $log_tmp_size=@log_tmp; +if ($log_tmp_size>0) {$biblatex=1;} + +my $preview_references=""; +if ($biblatex) +{ + optbibtex(); + open(AUX, $aux_file); + my @aux_data=<AUX>; + my @result=(); + foreach $a (@aux_data) + { + if (($a =~ m/\\citation{/)&&($a !~ m/{biblatex-control}/)) + { + $a =~ s/\\citation{/\\fancycitation{/; + push(@result, $a); + } + } + close(AUX); + + sub uniq { + return keys %{{ map { $_ => 1 } @_ }}; + } + + open(AUXA, ">$filename_noext"."-fancybib.tmp"); + foreach $a (sort(uniq(@result))) + { + print AUXA $a; + } + close(AUXA); + push (@tempfilenames,$filename_noext."-fancybib.tmp"); + $preview_references=$latex{'preview_biblatex'}; +} +else +{ + $preview_references=$latex{'preview_bibitem'}; +} + +system("$pdflatex \"$latex{ini}\\relax $latex{a}\\relax $latex{'a_extra'}\\relax $preview_references\\relax \\input $filename\""); +parse_aux_file_and_crop("a"); + +# The second pass, in this pass theorem-like environments are +# extracted. Two passes are necessary, since numbered equations which +# appear in theorems frequently have to been extracted separately (in +# the first pass). + +if($latex{'environments'} ne "") +{ +$latex{'b'}=$latex{'b'}.'\AtBeginDocument{\PreviewEnvironment[{[]}]{'.join('}\PreviewEnvironment[{[]}]{',split(/,/,$latex{'environments'}))."}}"; +} +if($latex{'snarfenvironments'} ne "") +{ +$latex{'b'}=$latex{'b'}.'\AtBeginDocument{\PreviewSnarfEnvironment[{[]}]{'.join('}\PreviewSnarfEnvironment[{[]}]{',split(/,/,$latex{'snarfenvironments'}))."}}"; +} +$latex{'b'}=$latex{'b'}.$latex{'b_extra'}; +compile_parse_aux_file_and_crop("b"); + +if($latex{'c'} ne "") +{ + compile_parse_aux_file_and_crop("c"); +} +else +{ + $latex{'pass_order'} =~ s/c//; +} + +print "\n----------------------------------------------\n------ pdflatex genearting tooltips ----------\n----------------------------------------------"; + +# We merge all the tooltips in one file. If some hand created +# tooltips are also present, we insert these tooltips first in a loop +# (multido). Then we insert theorem-like environments (from the second +# pass) and finaly equations and citations (from the first pass). + +my $opt_pdfpages_a=""; +my $opt_pdfpages_b=""; +my $inserttooltips='\insertttp{'.join('}\insertttp{',split(//,$latex{'pass_order'})).'}'; + +if ($tooltipfile ne "") +{ + $opt_pdfpages_a='\usepackage{multido}'; + $opt_pdfpages_b='\ifx\pdfpagewrapper\undefined\let\pdfpagewrapper\relax\fi\pdfximage{'.$tooltipfile.'.pdf}\edef\FancyPreviewTotalPages{\the\pdflastximagepages}\multido{\i=1+1}{\FancyPreviewTotalPages}{\setbox0=\hbox{\pdfpagewrapper{\includegraphics[page=\i]{'.$tooltipfile.'.pdf}}}\pdfpagewidth=\wd0 \pdfpageheight=\ht0 \advance \pdfpageheight by \dp0 \copy0\newpage}\newpage'; +} + +system("$pdflatex".' "\documentclass{minimal}\usepackage{graphicx}'.$opt_pdfpages_a.'\usepackage[papersize={5in,5in},margin=1pt]{geometry}'.$latex{'tooltips_envelope_preamble'}.'\usepackage[createtips]{fancytooltips}\newdimen\dist \dist=5pt\relax\begin{document}\pagestyle{empty}'.$opt_pdfpages_b.'\relax \gdef\savemaplabels#1#2#3#4{\xdef\temp{#2}} \def\fancypreviewnewlabel#1#2{\savemaplabels#2 \expandafter\ifx\csname keytip:#1:used\endcsname\relax \expandafter\def\csname keytip:#1:used\endcsname{used}\setbox0=\vbox{\kern\dist\hbox{\kern\dist\tooltipwraper{\includegraphics[page=\temp]{'.$filename_noext.'-\ttpfilename-crop.pdf}}\kern\dist}\kern\dist}\pdfpagewidth=\wd0 \pdfpageheight=\ht0 \advance \pdfpageheight by \dp0 \copy0 \keytip{#1}\newpage\fi}\def\insertttp#1{\def\ttpfilename{#1}\input '.$filename_noext.'-#1.tmp}'.$inserttooltips.'\end{document}"'); + +if ($tooltipfile ne "") +{ +open(TIPS1, ">>minimal.tips"); +open(TIPS2, "$tooltipfile.tips"); +while (<TIPS2>) { print TIPS1 $_; } +close (TIPS1); +close (TIPS2); +} + +# If biblatex is used, we update the information in bib file and hack +# the cite-like commands according to the example +# http://tex.stackexchange.com/questions/15356/showing-the-bibliographic-entry-in-a-popup-when-you-hover-over-the-citation-key/54831#54831 +# + +$latex{'ini'}=""; +if ($biblatex) +{ + system("$pdflatex \"$latex{'ini'}\\relax \\input $filename\""); + system("$bibtex $filename_noext.aux"); + + open(BIBL, ">fancy-preview-biblatex-settings.tex"); + print BIBL $latex{'biblatex'}; + close (BIBL); + push (@tempfilenames,"fancy-preview-biblatex-settings.tex"); + $latex{'ini'}='\AtBeginDocument{\input fancy-preview-biblatex-settings.tex}'; +} + +for my $i (1 .. 4){ + my $hypersetup='\hypersetup{colorlinks=true}'; + print "----------------------------------------------\n------ pdflatex final compilation $i ----------\n----------------------------------------------\n"; + system("$pdflatex -jobname=$filename_noext \"$latex{'ini'}".'\RequirePackage{etoolbox}\PassOptionsToPackage{active,mouseover,movetips,filename=minimal,'.$fancy_options.'}{fancytooltips}\AtEndPreamble{\usepackage{fancytooltips}'.$hypersetup.'}\input '.$filename.'"') +} + +foreach my $deletefile (@tempfilenames) {unlink ($deletefile);} + +print "\n ---------------------------------------------\n fancy-preview with options \"$fancy_options\" on \"$filename\" finished \n The output is in $filename_noext.pdf \n\n If the pdf file is too large, consider pdfcrop option\n and http://tex.stackexchange.com/questions/42236/pdfcrop-generates-larger-file\n ---------------------------------------------\n\n"; + + +sub parse_aux_file_and_crop +{ + # opens aux file, finds lines starting with \newlabel and not involving tocindent and writes them into tmp file + open(AUX, $aux_file); + my @aux_data=<AUX>; + my @filtered_data_tmp = grep /^\\newlabel/, @aux_data; + my @filtered_data = grep !/tocindent/, @filtered_data_tmp; + my $aux_file_a=$filename_noext."-".@_[0].".tmp"; + open(AUXA, ">$aux_file_a"); + foreach my $aa (@filtered_data) + { + $aa =~ s/\\newlabel{/\\fancypreviewnewlabel{/; + print AUXA $aa; + } + close (AUXA); + close (AUX); + push(@tempfilenames,$aux_file_a); + # crops the file + print "\nCropping PDF file, this may take some time ...\n"; + system("$pdfcrop $filename_noext.pdf $filename_noext-@_[0]-crop.pdf"); + push(@tempfilenames,"$filename_noext-@_[0]-crop.pdf"); +} + + +sub compile_parse_aux_file_and_crop +{ + unlink ("$filename_noext.aux"); + system("$pdflatex \"$latex{ini} \\input $filename\""); + optbibtex(); + system("$pdflatex \"$latex{ini} $latex{$_[0]} \\input $filename\""); + parse_aux_file_and_crop($_[0]); +} + + +sub optbibtex +{ + # runs bibtex and pdflatex if biblatex has been detected ($biblatex variable is 1) + if ($biblatex) + { + system("$bibtex $filename_noext.aux"); + system("$pdflatex \"$latex{ini} \\input $filename\""); + } +} diff --git a/Master/texmf-dist/doc/latex/fancytooltips/fancytipmark1.pdf b/Master/texmf-dist/doc/latex/fancytooltips/fancytipmark1.pdf Binary files differnew file mode 100644 index 00000000000..0418679f779 --- /dev/null +++ b/Master/texmf-dist/doc/latex/fancytooltips/fancytipmark1.pdf diff --git a/Master/texmf-dist/doc/latex/fancytooltips/fancytipmark2.pdf b/Master/texmf-dist/doc/latex/fancytooltips/fancytipmark2.pdf new file mode 100644 index 00000000000..2a4cc733e23 --- /dev/null +++ b/Master/texmf-dist/doc/latex/fancytooltips/fancytipmark2.pdf @@ -0,0 +1,67 @@ +%PDF-1.5 +%µí®ű +3 0 obj +<< /Length 4 0 R + /Filter /FlateDecode +>> +stream +xśeP˝N1Üý÷;¶W–JHeE¨HE…ׯ} ~”!>çîěË™„-†ăń~Äő“ŕřA‚yîw¨\đ™đ–ŻôđdÁ35Üá]¬«yio\ÍĄNäÁ#'´ÎÚG–ÁR*Šs¶!ěS°A/Ü"©ťĹHEąÉ@s3¨*ŹŇ“]k8´Ťő^–X»p·ö@żcp•€ŽĆ=M3`™ćĆÚ<ůÓu1$8ă@MÖ4r[›áďÝW#«îloií)Ěđ–ˇ5TĎüŰźĐÔĽüüˇěiOk^O€ +endstream +endobj +4 0 obj + 229 +endobj +2 0 obj +<< + /ExtGState << + /a0 << /CA 1 /ca 1 >> + >> +>> +endobj +5 0 obj +<< /Type /Page + /Parent 1 0 R + /MediaBox [ 0 0 172.400452 154.378052 ] + /Contents 3 0 R + /Group << + /Type /Group + /S /Transparency + /CS /DeviceRGB + >> + /Resources 2 0 R +>> +endobj +1 0 obj +<< /Type /Pages + /Kids [ 5 0 R ] + /Count 1 +>> +endobj +6 0 obj +<< /Creator (cairo 1.10.2 (http://cairographics.org)) + /Producer (cairo 1.10.2 (http://cairographics.org)) +>> +endobj +7 0 obj +<< /Type /Catalog + /Pages 1 0 R +>> +endobj +xref +0 8 +0000000000 65535 f +0000000629 00000 n +0000000343 00000 n +0000000015 00000 n +0000000321 00000 n +0000000415 00000 n +0000000694 00000 n +0000000821 00000 n +trailer +<< /Size 8 + /Root 7 0 R + /Info 6 0 R +>> +startxref +873 +%%EOF diff --git a/Master/texmf-dist/doc/latex/fancytooltips/fancytipmark3.pdf b/Master/texmf-dist/doc/latex/fancytooltips/fancytipmark3.pdf Binary files differnew file mode 100644 index 00000000000..259db357374 --- /dev/null +++ b/Master/texmf-dist/doc/latex/fancytooltips/fancytipmark3.pdf diff --git a/Master/texmf-dist/doc/latex/fancytooltips/fancytipmark4.pdf b/Master/texmf-dist/doc/latex/fancytooltips/fancytipmark4.pdf Binary files differnew file mode 100644 index 00000000000..2710ec863db --- /dev/null +++ b/Master/texmf-dist/doc/latex/fancytooltips/fancytipmark4.pdf diff --git a/Master/texmf-dist/doc/latex/fancytooltips/fancytooltips.pdf b/Master/texmf-dist/doc/latex/fancytooltips/fancytooltips.pdf Binary files differindex 67c2776591d..31b4cf547e0 100644 --- a/Master/texmf-dist/doc/latex/fancytooltips/fancytooltips.pdf +++ b/Master/texmf-dist/doc/latex/fancytooltips/fancytooltips.pdf diff --git a/Master/texmf-dist/doc/latex/fancytooltips/readme b/Master/texmf-dist/doc/latex/fancytooltips/readme index e525d19663e..b89444c5abf 100644 --- a/Master/texmf-dist/doc/latex/fancytooltips/readme +++ b/Master/texmf-dist/doc/latex/fancytooltips/readme @@ -11,8 +11,7 @@ Adobe Reader. Possible applications include automatical extraction of equations, definitions, theorems and other stuff from the document and inserting -previews to \ref and \eqref commands (see the examples/fancy-preview -directory). +previews to \ref, \cite and \eqref commands. Supported by grants 18/2006, 99/2008 and 131/2010 of Higher Education Development Fund (FRVS). diff --git a/Master/texmf-dist/source/latex/fancytooltips/fancytooltips.dtx b/Master/texmf-dist/source/latex/fancytooltips/fancytooltips.dtx index b8234789e25..5685590a472 100644 --- a/Master/texmf-dist/source/latex/fancytooltips/fancytooltips.dtx +++ b/Master/texmf-dist/source/latex/fancytooltips/fancytooltips.dtx @@ -1,6 +1,6 @@ % \iffalse meta-comment % -% Copyright (C) 2004-2010 by Robert Marik <marik@mendelu.cz> +% Copyright (C) 2004-2012 by Robert Marik <marik@mendelu.cz> % ---------------------------------------------------------- % % This file may be distributed and/or modified under the @@ -22,7 +22,7 @@ %<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01] %<package>\ProvidesPackage{fancytooltips} %<*package> - [2010/06/10 v1.8 fancytooltips.dtx file] + [2012/06/12 v1.12 fancytooltips.dtx file] %</package> % %<*driver> @@ -30,35 +30,31 @@ \EnableCrossrefs \CodelineIndex \RecordChanges -\usepackage[pdftex]{color} -\usepackage[filename=tip,mouseover,movetips]{fancytooltips} +\OnlyDescription +\usepackage{xcolor,graphicx,listings} +\usepackage[filename=tip,mouseover,movetips,fg]{fancytooltips} \buttontipwidth=2cm \buttontipheight=2cm \begin{document} \color{black} \DocInput{fancytooltips.dtx} - \PrintIndex \end{document} %</driver> % \fi % -% \CheckSum{1075} -% -% \CharacterTable -% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -% Digits \0\1\2\3\4\5\6\7\8\9 -% Exclamation \! Double quote \" Hash (number) \# -% Dollar \$ Percent \% Ampersand \& -% Acute accent \' Left paren \( Right paren \) -% Asterisk \* Plus \+ Comma \, -% Minus \- Point \. Solidus \/ -% Colon \: Semicolon \; Less than \< -% Equals \= Greater than \> Question mark \? -% Commercial at \@ Left bracket \[ Backslash \\ -% Right bracket \] Circumflex \^ Underscore \_ -% Grave accent \` Left brace \{ Vertical bar \| -% Right brace \} Tilde \~} +% \CheckSum{1186} +% +% \CharacterTable {Upper-case +% \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z Lower-case +% \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z Digits +% \0\1\2\3\4\5\6\7\8\9 Exclamation \! Double quote \" Hash (number) +% \# Dollar \$ Percent \% Ampersand \& Acute accent \' Left paren \( +% Right paren \) Asterisk \* Plus \+ Comma \, Minus \- Point \. +% Solidus \/ Colon \: Semicolon \; Less than \< Equals \= Greater than +% \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ Grave accent \` Left +% brace \{ Vertical bar \| Right brace \} Tilde \~} % % % \changes{v1.0}{2007/02/15}{Initial version} @@ -86,7 +82,7 @@ % % \changes{v1.6}{2010/04/10}{Added options \texttt{debug}, % \texttt{active} and \texttt{inactive}, added an example with -% automatical previews for equations and floats. Added handling of +% automatic previews for equations and floats. Added handling of % this.dirty and app.focusRect. Changed the name of the file with % tooltips. Added starred version of \texttt{tooltip} command.} % @@ -95,12 +91,26 @@ % % \changes{v1.8}{2010/06/10}{Added hook do insert stuff on each page.} % +% \changes{v1.9}{2011/12/04}{Changed expansion in the new |\ref| +% command provided by |FancyHook| macro (see |fancy-preview| +% facility).} +% +% \changes{v1.10}{2012/05/09}{New script preview-latex. New options +% |previewall| and |nosoap|.} +% +% \changes{v1.11}{2012/05/11}{Fixed bug related to bad position if +% |fg| option is used and \texttt{evensidemargin} is different from +% \texttt{oddsidemargin}.} +% +% \changes{v1.12}{2012/06/12}{Documentation updated. New option +% |tooltipmark|.} +% % \GetFileInfo{fancytooltips.dtx} % % \DoNotIndex{\newcommand,\newenvironment} % % -% \title{The \textsf{fancytooltips} package\thanks{This document +% \title{The \textsf{fancytooltips} package, the \textsf{fancy-preview} script\thanks{This document % corresponds to \textsf{fancytooltips}~\fileversion, dated % \filedate.} \thanks{Supported by grants 18/2006, 99/2008 and 131/2010 % of Higher @@ -109,97 +119,107 @@ % % \maketitle % +% \setcounter{tocdepth}{2}\tableofcontents\rightskip=0em plus 0.2em\sloppy % \section{Introduction} % -% The package |fancytooltips| is a package for \LaTeX. The pdf can be -% created by pdflatex or by latex + dvips + -% AdobeDistiller\footnote{not free ps2pdf} + Adobe -% Acrobat\footnote{not free Adobe Reader.}. It allows to create -% tooltips in a similar way like |cooltooltips| package, but the -% tooltip is a page from another PDF file. In this way you can use -% mathematics, pictures and animations in your tooltips. The -% resulting PDF file can be used also with free Abobe Reader. -% -% The \color{black}tooltips are activated by clicking the active area -% on the screen and deactivated after closing page or by moving mouse -% outside the link. You can try the links \tooltip{here}{1} -% (Einstein's formula) and also \tooltipanim{here}{2}{7} (animation -- -% numbers from 1 to 6). You have to use the free Adobe Reader or -% nonfree Adobe Acrobat to see the effect (xpdf, evince and others -% fail to work with JavaScripts). For more examples how the -% presentation may look like see the |examples| subdirectory. -% -% Similar functionality can be achieved using |pdfcomment| (smaller +% The \LaTeX{} package |fancytooltips| allows to insert tooltips into +% PDF documents -- a popup windows appears if the mouse hovers or +% clicks particular area. You can use plain text as well as +% mathematics, pictures and animations in your tooltips. The PDF +% viewer must interpret Javascripts to make the tooltips work. This is +% currently true only for (free) Abobe Reader and (commercial) Adobe +% Acrobat. There are two ways how to produce the PDF file. The +% simplest way is to use |pdflatex|. Another option is |latex| + +% |dvips| + AdobeDistiller\footnote{not free |ps2pdf|} + Adobe +% Acrobat\footnote{not free Adobe Reader.}. +% +% \color{black}Here you can test two tooltips: \tooltip{Einstein's +% formula}{1} and simple \tooltipanim{animation}{2}{7} (numbers from 1 +% to 6). For more examples how the presentation may look like see the +% |examples| subdirectory. We also provide a Perl script +% |fancy-preview| which allows to extract equations, theorems and +% related parts of text into separate PDF file and insert tooltips +% after each |\ref|, |\eqref| and |\cite| command automatically. For +% more information see Figure \ref{fig:1} and demos (scientific +% papers, presentations, tests) at +% \url{http://user.mendelu.cz/marik/fancy-preview}. +% +% Related \LaTeX{} packages are |cooltooltips|, |pdfcomment| (smaller % size of the resulting PDF, but restricted to plain text), |ocgtools| % (works with layers, only |pdflatex| is supported) and Acro\TeX{} % (works with layers, only |latex| + |dvips| + Adobe Distiller + Adobe % Acrobat are supported). All these ``similar'' packages allow to -% write the text for he tooltips and the text for the main document in -% one file. In contrast to this approach, |fancytooltips| package -% makes use of an external file. However, if you prefer to write both -% tooltips in one file, you can preprocess your file using |preview| -% package and extract tooltips automatically, as shown in the -% |examples/fancy-preview| directory. -% -% The buttons are created using |eforms.sty| which is a part of -% AcroTeX bundle. -% -% \section{Usage} -% \subsection{How the package works} -% We have to prepare external file with content of tooltips first. -% The pages of this external file are inserted as icons at hidden -% buttons into the presentation. Whenever we use a command to insert -% tooltip, the following actions are performed -% \begin{itemize}\item -% The current page is covered by invisible transparent button which -% spans across the whole page (the information about the pages with -% tooltips is stored in |aux| file and hence we have to run \LaTeX{} -% \textit{three times}). The button has an associated JavaScript -% action to close all tooltips (i.e. make itself and other related -% buttons hidden). -% \item The button is created in text. This button is transparent, -% covers the text typeset by \TeX{} into |\hbox| of dimension 0 pt -% and allows to activate a JavaScript. This JavaScript takes the -% picture required, puts this picture as icon to the button which -% covers the corresponding page and makes this button visible. +% write the text for the tooltips inside the main document. In +% contrast to this approach, |fancytooltips| package makes use of an +% external file. This allow to use graphics or mathematical +% expressions in the tooltips. +% +% The package requires |eforms.sty| and |insdljs.sty| packages, which +% are part of AcroTeX bundle +% (\url{http://www.math.uakron.edu/~dpstory/webeq.html}). +% +% \section{Usage of \texttt{fancytooltips.sty}} +% \subsection{Small technical background} +% +% \begin{itemize} +% \item The pages from the external PDF file with tootlips are +% inserted as icons at hidden buttons into the resulting +% PDF. +% \item If you insert tooltip, the current page is covered by an +% invisible transparent button which spans across the whole page +% (the information about the pages with tooltips is stored in |aux| +% file and hence we have to run \LaTeX{} \textit{three times}). The +% button has an associated JavaScript action to close all tooltips +% (i.e. make itself and other related buttons hidden). +% \item Another button which reveals tooltip is created. This button +% is transparent, covers the text typeset by \TeX{} and allows to +% activate a JavaScript. This JavaScript takes the picture required, +% puts this picture as icon to the button which covers the +% corresponding page and makes this button visible. % \item Each page has an associated action which closes all tooltips % when the page is opened. % \end{itemize} % % \subsection{The file with tooltips} -% The file with tooltips is an ordinary pdf file, one tooltip per -% page, tooltips should be in the top right corner at the page, in a -% colored box and the rest of the page should be transparent. If you -% consider to use |movetips| option (see below), then every page -% should have the dimensions equal to the dimensions of the colored -% box with tooltip\footnote{Look at the files \texttt{tooltipy.tex} and -% \texttt{tooltipy.pdf} from |examples| subdirectory for a simple example -% how to meet this condition under pdf\LaTeX}. We also provide -% simple cross referencing mechanism to reffer to the tooltips. If the -% pdf file is created by \LaTeX, \DescribeMacro{\keytip} you can -% define keywords to reffer to the pages using |\keytip| command. -% Simply put |\usepackage[createtips]{fancytooltips}| into preamble -% and write \texttt{\string\keytip}\marg{foo} in document. This writes +% The file with tooltips is an ordinary PDF file, one tooltip per +% page. Tooltips should be in the top right corner at the page, in a +% \textit{box with nontransparent background} and the rest of the page +% should be transparent. If you consider to use |movetips| option +% which causes the tooltip appear near the mouse cursor instead of in +% the top right corner (see below), then every page should have the +% dimensions equal to the dimensions of the colored box with +% tooltip\footnote{Look at the files \texttt{tooltipy.tex} and +% \texttt{tooltipy.pdf} from |examples| subdirectory for a simple +% example how to meet this condition under pdf\LaTeX. You may also use +% ordinary \LaTeX{} class, set \texttt{\textbackslash pagestyle\{empty\}} and crop the boundary.}. You can +% call the tooltips by their page numbers, but for better comfort we +% also provide simple cross referencing mechanism. If the pdf file is +% created by \LaTeX, \DescribeMacro{\keytip} you can define keywords +% to refer to the pages using |\keytip| command. Simply put +% |\usepackage[createtips]{fancytooltips}| into preamble and write +% \texttt{\string\keytip}\marg{foo} in document. This writes % information about keyword \meta{foo} and the pagenumber into file -% |\jobname.tips|. +% |\jobname.tips|. See +% \url{http://user.mendelu.cz/marik/fancytooltips} for some tooltip +% templates. % -% \subsection{The file with presentation -- pdf\LaTeX users} -% In the file with presentation, the user is responsible +% \subsection{The file with presentation} +% In the file with presentation, the user is responsible to % \begin{itemize} % \item input either |color| or |xcolor| package in the % preamble % \item \LaTeX{} the file two times (we write some macros into |aux| -% file). +% file) or three times (if option |fg| is used). % \end{itemize} -% This is not comfortable for the user, but everybody uses different -% set of packages and from this reason, this part is left to the user. -% (And among others, the |color| or |xcolor| package is probably -% inputted by the package which is used to build the presentation.) +% You may use the following options to set the necessary information +% and change the default behavior of the package. % -% \begin{description}\def\iitem#1{\item[#1]}\sloppy\raggedright -% \iitem{filename} To input the tooltips from file -% \meta{foo.pdf} call the package with |filename| option: -% |\usepackage[filename=foo]{fancytooltips}|. +% \def\iitem#1{\item[{\color{blue!50!black}\texttt{#1}}]} +% \begin{description}\sloppy\rightskip 0 pt plus 1 em +% \iitem{filename} To input the tooltips from file \meta{foo.pdf} +% call the package with |filename| option: +% |\usepackage[filename=foo]{fancytooltips}|. This option is +% required if compiled with |pdflatex|. % % \iitem{movetips} By default, tooltip appears in the % top right corner of the page (use View--PageLayout-Single Page in @@ -233,14 +253,24 @@ % only on the page which include tooltips, you may want to use % option |fixcolor| to fix it. % +% \iitem{fixcolor} See |blur| option. +% % \iitem{debug} Prints two alerts reporting success or problems when % opening PDF file in Adobe Acrobat (Adobe Reader). Use this option -% to find possible source of problems. See also the section -% Troubleshooting \dots in this manual. +% to find possible source of problems. See also the Section +% \ref{sec:tr} in this manual. % -% \iitem{noextratext} Do not append any mark at the end of the link +% \iitem{noextratext} No mark is appended at the end of the link % which opens tooltips (see help for |\tooltip|). % +% \iitem{nosoap} A single space is used to occupy the space for +% button produced by |\tooltip*| command instead of blue soap. As a +% result, the button produced by |\tooltip*| works as usual, but it +% is invisible. This is sometimes convenient for the user, since the +% mark does not disturb the text. However, the author has to +% instruct the user, that the hidden buttons follow links from +% cross references. +% % \iitem {fg} The button for displaying pictures is placed on % background and the buttons which activate tooltips are placed % immediately in the text by default. With |fg| option all these @@ -251,8 +281,28 @@ % anything in dvi mode now (despite the fact that pdf\LaTeX\ % provides the feature also for dvi mode), but this could be changed % if someone requests this feature. Use this option for example, if -% you use buttons and forms in your PDF (like tests produced by -% Acro\TeX) and the tooltips should be on the top when displayed. +% you use frame around hyperlinks or buttons and form fields in your +% PDF (like tests produced by Acro\TeX). +% +% \iitem{preview} Redefines |\ref|, |\eqref| and |\cite| commands to +% work with tooltips extracted by |fancy-preview|, see Section +% \ref{sec:fancy-preview} and demo files in |example/fancy-preview| +% directory. The tooltip is inserted only if the target of the +% reference is on different PDF page as the tooltip. This option is +% suitable for presentations where the whole PDF page is +% visible. Replaces former |\FancyHook| command. +% +% \iitem{previewall} Like |preview| but shows tooltip also if the +% target is on the same page. Suitable for enhanced versions of +% papers written on A4 page. +% +% \def\aaa#1{#1\hbox +% {\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% +% {fancytipmark#1.pdf}}}}} \iitem{tooltipmark} Allows to change the +% tooltipmark to some predefined styles, values are \aaa1, \aaa2, +% \aaa3 and \aaa4. Note that you can change the mark to whatever +% different by redefining |\TooltipExtratext| command. Work only in +% pdflatex mode. % % \end{description} % @@ -267,10 +317,10 @@ % \DescribeMacro{\TooltipExtratext} The printed text \meta{stuff} is % followed by |\TooltipExtratext| command. The default value is small % blue soap, as you have seen in the second paragraph of this -% documentation. There is a package |noextratext| which defines +% documentation. There is a |noextratext| option which defines % |\TooltipExtratext| to be empty. \DescribeMacro{noextratext option} % If \marg{keyword-or-pagenumber} is not recognized as valid keyword -% for tooltips, +% for tooltips, it is supposed to be pagenumber. % % The text \marg{stuff} is inserted in |\hbox| by % |\tooltip|. \DescribeMacro{\tooltip*}With starred version of the @@ -288,27 +338,23 @@ % |\def\delayinterval{100}|. There is also starred version which works % similarly like |\tooltip*| command. % -% \DescribeMacro{\FancyHook} Redefines |\ref| and |\eqref| commands to -% work with preview, see the demo files in |example/fancy-preview| -% directory. -% -% \DescribeMacro{\TooltipRefmark} Extra text added to |\ref| and -% |\eqref| commands with previews, see the demo files in -% |example/fancy-preview| directory. The default value is the same as -% for |\TooltipExtratext|. +% \DescribeMacro{\TooltipRefmark} Extra text added to |\ref|, |\eqref| +% and |\cite| commands with previews, see Section +% \ref{sec:fancy-preview}. The default value is the same as for +% |\TooltipExtratext|. % -% \subsection{Changes for dvips users} +% \subsubsection{Changes for dvips users} % Dvips users also have to prepare tooltips into PDF file, not eps as % usual. But we have to insert these tooltips in Adobe Acrobat Pro % program. If you use Acrobat Pro version 8.1 and later, install the % file \texttt{aeb.js} from AcroTeX eDucation bundle as described in % the documentation to AcroTeX.\footnote{If you do not install -% \texttt{aeb.js} properly, you can still create your presentation , -% but you have to import fdf file manually, see the section +% \texttt{aeb.js} properly, you can still create your presentation, +% but you have to import the |fdf| file manually, see the section % Troubleshooting and known problems.} % % Since \LaTeX{} is not capable to find the number of pages in -% external PDF file with tooltips, dvips users have to specify option +% external PDF file with tooltips, \DescribeMacro{dvips}dvips users have to specify option % |dvips| in |fancytooltips| package. \DescribeMacro{pages} You have % to use also a |pages| option with the number of pages in the PDF % file with tooltips, if you use dvips route. You have to call the @@ -331,9 +377,210 @@ % |ImportTooltips();| fails, you either have not the PDF file with % tooltips in current directory, or the PDF file does not contain % JavaScripts. In the latter case insert document level JavaScripts -% manually as described in the next section. +% manually as described in the Section \ref{sec:tr}. +% +% \section{Tootlips at +% references: \texttt{fancy-preview}} \label{sec:fancy-preview} +% \subsection{Basic usage} +% There is a Perl script |fancy-preview| which can be used to extract +% text from bibliography items, numbered equations, numbered theorems, +% lemmas, etc, put this text into separate PDF file and add this text +% as tooltips to the corresponding |\ref|, |\eqref| and |\cite| +% commands. Reading the resulting file may look like on Figure +% \ref{fig:1}. +% \begin{figure} +% \centering +%\fbox{\includegraphics[width=0.95\textwidth]{cite.png}} +% \caption{\texttt{fancy-preview}} +% \label{fig:1} +% \end{figure} +% +% +% The script |fancy-preview| has been tested with Texlive2011 on both +% Linux and MS Windows. To run this script you need working Perl +% installation (usually present on Linux workstations, on MS Windows +% you may need to install Perl from +% \url{http://www.activestate.com/activeperl}) and |Config::IniFiles| +% module\footnote{Package |libconfig-inifiles-perl| on Ubuntu Linux, +% |cpan Config::IniFiles| or |ppm install Config::Inifiles| on MS +% Windows. Alternatively you can run |ppm| without any parameters to +% invoke the GUI.}) +% +% To compile your document |file.tex| do the following +% \begin{itemize} +% \item Put |\usepackage{hyperref}| into the preamble of your document +% (if not already loaded). +% \item If you write references in |thebibliography| environment, put +% empty line after each |\bibitem| command (including the last item +% in |thebibliography|). +% \item Run |fancy-preview file|. After several compilations you +% should get the PDF file |file.pdf|. +% \end{itemize} +% The default work-flow is the following. The file is compiled with +% |pdflatex| to get correct numbers of equations and in the first +% pass of |preview.sty| we extract displayed equations (but the +% numbers are thrown away). After this we crop the PDF file by using +% |pdfcrop| program (an alternate program can be specified as +% optional parameter). Then we extract numbered environments +% (theorem, Theorem, lemma, corollary, definition, figure, table) +% using the second pass and crop the PDF file again. After this we +% merge all equations, theorems etc which are marked with |\label| +% command. The PDF file with extracted parts of the text is the used +% as source of toltips in final compilations. +% +% Many things can be customized. The following options are +% available. +% \begin{description} +% \iitem{pdfcrop} You may specify an alternative batch file to crop +% boundary of PDF file. Default is |pdfcrop|. The command line for +% an alternative program to crop PDF file is supposed to be the +% following: |programname input.pdf output.pdf|. Using optimal +% program to PDF file may be much fasater and may produce +% significantly smaller files. \iitem{tooltips} You may combine +% the tooltips extracted by |fancy-preview| with ``ordinary hand +% made tooltips''. Simply call |fancytooltips| in the main document +% by |\usepackage[inactive]{fancytooltips}| in your document and +% specify the file with tooltips in the command line of the +% |fancy-preview| or in the |ini| file. You may also compile your +% file by |pdflatex| and get ``normal'' PDF output (the compilation +% is way faster). \iitem{fancy\underline{ }options} Options passed +% |fancytooltips| in final compilations. Default is +% |previewall,nosoap|. Options |mouseover| and |movetips| are added +% automaticaly.\iitem{ini\underline{ }file}Specifices the |ini| file +% with configuration, see the next subsection. +% \end{description} +% \subsection{Configuration from ini files} +% Other customization can be done via |ini| files. The script looks +% for customizations in the file specified by |ini_file| command line +% parameter. If this parameterer is not used, the script looks for +% customization in two default locations: |~/.fancy-preview.ini| and +% in |./fancy-preview.ini| (both files are used if both exist). You +% can use |~/.fancy-preview.ini| for customizations related to all +% your projects and |./fancy-preview.ini| for projects in the current +% directory. The options from the file +% |./fancy-preview.ini| override |~/.fancy-preview.ini| and the +% options from command line override options from +% |./fancy-preview.ini|. The format is described at +% \url{http://search.cpan.org/~shlomif/Config-IniFiles-2.75/lib/Config/IniFiles.pm}. +% +% The parameters are divided into two sections, |[main]| and |[latex]|. +% In section |[main]| of |ini| file you can set parameters |pdfcrop|, +% |tooltips| and |fancy_options|. +% +% In the section |[latex]| if the initialization file you can +% customize the compilation by \LaTeX. Here you can set parameters +% |environments| and |snarfenvironments| to set the environments which +% will be extracted. The default values are +% |environments=Theorem,theorem,lemma,corollary,definition| and +% |snarfenvironments=figure|. +% +% The material from |tex| file is extracted in three passes. These +% passes are denoted by |a|, |b| and |c|. If +% \texttt{\string\label}\marg{foo} appears in the text which is marked +% for extraction, then the corresponding +% \texttt{\string\newlabel}\marg{foo} command is written to the |aux| +% file and \meta{foo} is supposed to be the name of the keyword +% corresponding to the PDF page with the text. +% +% If a referenced material appears in more passes, then the priority +% is set in the variable |$latex{'pass_order'}| and can be customized +% in the ini file in |[latex]| section as |pass_order| parameter. The +% default value is |pass_order=acb|, i.e. |c| overrides |b| and |a| +% overrides |c|. +% +% As a typical example consider equation with label |\label{eq}| in +% numbered theorem with label |\label{th}|. The equation is extracted +% in pass |a| (displayed equation) and in pass |b| (the whole +% theorem). The corresponding |\newlabel{eq}| command appers in two +% |aux| files -- from passes |a| and |b|. The first one corresponds to +% the PDF page with equation, the latter to the PDF page with whole +% theorem. Since |a| overrides |b|, then |\ref{eq}| and |\eqref{eq}| +% commands show the number of the equation followed by the tooltip +% with equation only. Further |\ref{th}| shows number of the theorem +% followed by the tooltip with the whole theorem. If you set |pass_order=ba|, then both |\ref{eq}| and |\ref{th}| are followed by the +% same tooltip. +% +% The following options are available\footnote{These +% options are used as keywords in a hash variable \texttt{latex}, i.e. for +% default value of \texttt{param} parameter search the file \texttt{fancy-preview} +% for \texttt{\$latex\{'param'\}}.}. +%\begin{itemize} +% \iitem {a} Defines commands for the first pass. It +% inserts |preview.sty| command which extracts displayed +% mathematics. Also resets |\tagform@| and |\@eqnnum| to skip +% printing of equation numbers. +% \iitem {a\underline{ }extra} Defines material which is appended to |a| +% +% \iitem {b} Defines commands fot the second pass. In this \LaTeX{} +% run are (by default) floating figures and theorem-like environments +% extracted. Inserts |preview.sty|. At the runtime, +% |\PreviewEnvironment[{[]}]{env}| and +% |\PreviewSnarfEnvironment[{[]}]{env}| for each |env| in comma +% separated list from |environments| and |snafenvironments| is added, +% respectively. +% \iitem {b\underline{ }extra} Defines material which is appended to |b| +% +% \iitem{environments} See |b| option. +% +% \iitem{snarfenvironments} See |b| option. Default value is |figure|. +% +% \iitem {c} If empty (default value), then the third pass is +% skipped. Otherwise, you may activate |preview.sty| similarly like in +% |b| (for a template see the source code and the default setting of +% |$latex{'b'}|) and extract environments and commands according to +% your interest. A possible application is to extract |minipage| +% environments, if there are two or more figures inserted in +% |minipage| environments into one |figure| environment. +% +% \iitem{pass\underline{ }order} Sets priority, which pass is supposed +% to produce the output for a |\label| which is extracted more times +% than once, see the previous paragraphs for explanation and example. +% +% \iitem{preview\underline{ }bibitem} Redefines |\bibtem| command. The +% material between |\bibitem| and |\par| is wrapped to the width of +% |0.75\textwidth| and extracted. +% +% \iitem{preview\underline{ }biblatex} Similarly like +% |preview_bibitem| but works with |biblatex|. +% +% \iitem{ini} Inserted at the begin of each |pdflatex| run. % -% \section{Troubleshooting and known problems} +% \iitem{tooltips\underline{ }envelope\underline{ }preamble} Used in +% preamble. Defines command |\tooltipwraper|. This command wraps the +% tooltips. Default is to use |tikz| to put everything into a yellow +% box with rounded corners and shading. +% +% \iitem{biblatex} Creates temporary file +% |fancy-preview-biblatex-settings.tex|. This file contains definition +% which allow |biblatex| to work with citations and tooltips and we +% input this file in final compilations. This code comes from +% |tex.stackexchange.com|. +%\end{itemize} +% +% +% +% \subsection{Tips and tricks} +% \begin{itemize} +% \item The program |pdfcrop| from \TeX live may produces large PDF +% files. See the discussion at +% \url{http://tex.stackexchange.com}\footnote{\url{http://tex.stackexchange.com/questions/42236/pdfcrop-generates-larger-file}}. The +% smaller size can be obtained with the solution from the discussion +% below the question, which is based on |gs| and |pdftk|. The +% |python| script from the same discussion produces slightly larger +% file than |pdftk|, but still much smaller than |pdfcrop| and +% provides the fastest solution. +% \item Do not use floats in environments, which are +% extracted. Otherwise you get an error from \LaTeX. A workaround +% could be also to change temporarily definition of the floating +% environment (redefine |figure| environment, for example). +% \item If you are not interested in customization via |ini| files and +% do not want to install extra modules to your Perl installation, +% you may delete the about twenty lines from |fancy-preview| +% starting with |use Config::IniFiles;| up to the line +% |read_config("./fancy-preview.ini");| +% \end{itemize} +% +% \section{Troubleshooting and known problems}\label{sec:tr} % The source code is in Mercurial repository at % \url{http://bitbucket.org/robert.marik/fancytooltips/}. You can also % report problems and issues in the forum at this site. The code on @@ -344,7 +591,7 @@ % \item % The package works with |eforms.sty| from version % 2006/10/03 v1.0a. You can download this or newer version from -% www.arotex.net site. +% \url{http://www.acrotex.net} site. % \item If the graphics included by |\TooltipExtratext| and % |\TooltipRefmark| has colors with \textbf{custom opacity}, Adobe % Acrobat Pro sometimes renders the pictures bad. No problems of @@ -427,6 +674,18 @@ \newif\if@fancytooltips@fixcolor\@fancytooltips@fixcolorfalse \DeclareOptionX{fixcolor}{\@fancytooltips@fixcolortrue} +\newif\if@fancytooltips@preview\@fancytooltips@previewfalse +\DeclareOptionX{preview}{\@fancytooltips@previewtrue} + +\newif\if@fancytooltips@previewall\@fancytooltips@previewallfalse +\DeclareOptionX{previewall}{\@fancytooltips@previewtrue\@fancytooltips@previewalltrue} + +\newif\if@fancytooltips@nosoap\@fancytooltips@nosoapfalse +\DeclareOptionX{nosoap}{\@fancytooltips@nosoaptrue} + +\def\@@fancytipmark{} +\DeclareOptionX{tooltipmark}{\xdef\@@fancytipmark{#1}} + \def\fancytooltipsdebugmsg{} \DeclareOptionX{debug}{\def \fancytooltipsdebugmsg { @@ -472,10 +731,9 @@ if (this.getField("animtiph") == null) \newcommand{\tooltip@NoStar}[2]{#1}% \newcommand{\tooltipanim}{\@ifstar\tooltipanim@Star\tooltipanim@NoStar}% -\newcommand{\tooltipanim@Star}[2]{#1}% -\newcommand{\tooltipanim@NoStar}[2]{#1}% +\newcommand{\tooltipanim@Star}[3]{#1}% +\newcommand{\tooltipanim@NoStar}[3]{#1}% \def\keytip#1{}% -\def\FancyHook{}% \def\TooltipPage#1#2{}% \let\TooltipExtratext\relax \let\TooltipRefmark\relax @@ -495,37 +753,71 @@ if (this.getField("animtiph") == null) \newcount\fancycheckcount\fancycheckcount=0 \def\fancy@second#1#2#3#4{#2} -\def\FancyHook{ +\def\fancypreview@refhook{% \global\let\oldref\ref \gdef\ref##1{\oldref{##1}\global\advance\fancycheckcount by 1\relax \edef\templabel{fancyanchorref:\the\fancycheckcount}% \expandafter\label\expandafter{\templabel}% \expandafter\ifx \csname FancyToolTip@##1\endcsname\relax \else\hbox to 0 pt{% -\expandafter\ifx \csname r@##1\endcsname \relax\else -\edef\temp{\csname r@##1\endcsname}% -\expandafter\edef\expandafter\fan@tempa\expandafter{\expandafter\fancy@second\temp}% -\fi -\expandafter\ifx \csname r@fancyanchorref:\the\fancycheckcount\endcsname \relax\else -\edef\fan@ttemp{r@fancyanchorref:\the\fancycheckcount}% -\expandafter\let\expandafter\fan@temp@w\csname \fan@ttemp\endcsname -\edef\fan@temp@ww{\expandafter\fancy@second\fan@temp@w}% -\fi -\ifx\fan@temp@ww\undefined\else -\fi +% \end{macrocode} +% Here we extract the page number for the label destination. +% \begin{macrocode} + \expandafter\ifx \csname r@##1\endcsname \relax\else + \expandafter\let\expandafter\fancytooltip@temp@a\csname r@##1\endcsname + \edef\fan@tempa{\expandafter\fancy@second\fancytooltip@temp@a}% + \fi +% \end{macrocode} +% Here we extract the page number of the |\ref| command via faked label |fancyanchorref:\the\fancycheckcount|. +% \begin{macrocode} + \expandafter\ifx \csname r@fancyanchorref:\the\fancycheckcount\endcsname \relax\else + \expandafter\let\expandafter\fan@temp@w\csname r@fancyanchorref:\the\fancycheckcount\endcsname + \edef\fan@temp@ww{\expandafter\fancy@second\fan@temp@w}% + \fi +% \end{macrocode} +% We print tooltip after |\ref| only if both |\label| and |\ref| commands are on different pages +% \begin{macrocode} +\if@fancytooltips@previewall\def\fan@tempa{not a page number}\fi \ifx\fan@tempa\fan@temp@ww\else\smash{% \let\TooltipExtratext\relax\tooltip{\strut\TooltipRefmark}{##1}}% \fi \hss}% -\fi} -\ifTooltip@usepdftex -\def\TooltipRefmark{\hbox {\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% - {fancytipmark.pdf}}}}}% +\fi}% +% \end{macrocode} +% We replace the cite command. We test if natbib is loaded, if not, we redefine the command from article.cls. +% \begin{macrocode} +\ifx\NAT@citea@mbox\undefined +\def\@citex[##1]##2{\leavevmode + \let\@citea\@empty + \@cite{\@for\@citeb:=##2\do + {\@citea\def\@citea{,\penalty\@m\ }% + \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}% + \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi + \@ifundefined{b@\@citeb}{\hbox{\reset@font\bfseries ?}% + \G@refundefinedtrue + \@latex@warning + {Citation `\@citeb' on page \thepage \space undefined}}% + {\ifx\csname r@fancy:cite:\@citeb\endcsname\undefined \@cite@ofmt{\csname b@\@citeb\endcsname}\else\tooltip*{\@cite@ofmt{\csname b@\@citeb\endcsname}}{fancy:cite:\@citeb}\fi + }}}{##1}}% \else -\def\TooltipRefmark{\hbox {\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% - {fancytipmark.eps}}}}}% -\fi%\ifTooltip@usepdftex +\def\NAT@citea@mbox{% + \@citea\mbox{\NAT@hyper@{{\citenumfont{\NAT@num}}}}\tooltip*{}{fancy:cite:\@citeb}} +\fi } +\if@fancytooltips@nosoap + \def\TooltipRefmark{\hbox{\ }}% +\else + \ifTooltip@usepdftex + \def\TooltipRefmark{\hbox {\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% + {fancytipmark\@@fancytipmark.pdf}}}}}% + \else + \def\TooltipRefmark{\hbox {\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% + {fancytipmark.eps}}}}}% + \fi%\ifTooltip@usepdftex +\fi%\if@fancytooltips@nosoap + +\if@fancytooltips@preview\AtBeginDocument{\fancypreview@refhook}\fi + \if@fancytooltips@createtips % \end{macrocode} % This part (three lines) is processed if the option |createtips| is @@ -552,12 +844,17 @@ if (this.getField("animtiph") == null) \ifTooltip@usepdftex \RequirePackage[pdftex]{eforms} \def\TooltipExtratext{\hbox{\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% - {fancytipmark.pdf}}}}} + {fancytipmark\@@fancytipmark.pdf}}}}} \else \RequirePackage[dvips]{eforms} \def\TooltipExtratext{\hbox{\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% {fancytipmark.eps}}}}} \fi%\ifTooltip@usepdftex + +\if@fancytooltips@nosoap + \def\TooltipExtratext{\hbox{\ }}% +\fi%\if@fancytooltips@nosoap + \if@fancytooltips@extratext\else\let\TooltipExtratext\relax\fi \AtBeginDocument{ @@ -613,7 +910,8 @@ if (this.getField("animtiph") == null) \def\@ocg@makeknown#1#2#3{}\fi \fi -\if@fancytooltips@fg\else +\if@fancytooltips@fg +\else \RequirePackage{eso-pic} \def\frametip{% \expandafter\ifx \csname TooltipPage\thepage\endcsname\relax @@ -627,6 +925,7 @@ if (this.getField("animtiph") == null) \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}% + \global\let\fancytooltips@save@position\relax% } \def\fancy@beginshipout@hook{} @@ -635,7 +934,7 @@ if (this.getField("animtiph") == null) \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}% + \hbox to 0 pt{\box\AtBeginShipoutBox\hss}% \ifTooltip@usepdftex \fancytooltips@save@position \if@fancytooltips@blur @@ -647,16 +946,16 @@ if (this.getField("animtiph") == null) \vbox to 0 pt{\vss\hbox{\vrule width \paperwidth height \paperheight}}% \end{ocg}\hss}% \fi - \fi + \fi%\if@fancytooltips@blur \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 - }% + \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%\ifx + \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}\hss}}% + \fi%\if@fancytooltips@fg + \fi%\ifTooltip@usepdftex + \kern\hsize}% }% % \end{macrocode} diff --git a/Master/texmf-dist/tex/latex/fancytooltips/fancytipmark.pdf b/Master/texmf-dist/tex/latex/fancytooltips/fancytipmark.pdf Binary files differindex 75e0f26d72c..6bc49497e42 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 fbf45d176bb..0120015cf76 100644 --- a/Master/texmf-dist/tex/latex/fancytooltips/fancytooltips.sty +++ b/Master/texmf-dist/tex/latex/fancytooltips/fancytooltips.sty @@ -22,7 +22,7 @@ %% \NeedsTeXFormat{LaTeX2e}[1999/12/01] \ProvidesPackage{fancytooltips} - [2010/06/10 v1.8 fancytooltips.dtx file] + [2012/06/12 v1.12 fancytooltips.dtx file] \RequirePackage{graphicx} \RequirePackage{xkeyval} \RequirePackage{atbegshi} @@ -61,6 +61,18 @@ \newif\if@fancytooltips@fixcolor\@fancytooltips@fixcolorfalse \DeclareOptionX{fixcolor}{\@fancytooltips@fixcolortrue} +\newif\if@fancytooltips@preview\@fancytooltips@previewfalse +\DeclareOptionX{preview}{\@fancytooltips@previewtrue} + +\newif\if@fancytooltips@previewall\@fancytooltips@previewallfalse +\DeclareOptionX{previewall}{\@fancytooltips@previewtrue\@fancytooltips@previewalltrue} + +\newif\if@fancytooltips@nosoap\@fancytooltips@nosoapfalse +\DeclareOptionX{nosoap}{\@fancytooltips@nosoaptrue} + +\def\@@fancytipmark{} +\DeclareOptionX{tooltipmark}{\xdef\@@fancytipmark{#1}} + \def\fancytooltipsdebugmsg{} \DeclareOptionX{debug}{\def \fancytooltipsdebugmsg { @@ -106,10 +118,9 @@ if (this.getField("animtiph") == null) \newcommand{\tooltip@NoStar}[2]{#1}% \newcommand{\tooltipanim}{\@ifstar\tooltipanim@Star\tooltipanim@NoStar}% -\newcommand{\tooltipanim@Star}[2]{#1}% -\newcommand{\tooltipanim@NoStar}[2]{#1}% +\newcommand{\tooltipanim@Star}[3]{#1}% +\newcommand{\tooltipanim@NoStar}[3]{#1}% \def\keytip#1{}% -\def\FancyHook{}% \def\TooltipPage#1#2{}% \let\TooltipExtratext\relax \let\TooltipRefmark\relax @@ -124,37 +135,59 @@ if (this.getField("animtiph") == null) \newcount\fancycheckcount\fancycheckcount=0 \def\fancy@second#1#2#3#4{#2} -\def\FancyHook{ +\def\fancypreview@refhook{% \global\let\oldref\ref \gdef\ref##1{\oldref{##1}\global\advance\fancycheckcount by 1\relax \edef\templabel{fancyanchorref:\the\fancycheckcount}% \expandafter\label\expandafter{\templabel}% \expandafter\ifx \csname FancyToolTip@##1\endcsname\relax \else\hbox to 0 pt{% -\expandafter\ifx \csname r@##1\endcsname \relax\else -\edef\temp{\csname r@##1\endcsname}% -\expandafter\edef\expandafter\fan@tempa\expandafter{\expandafter\fancy@second\temp}% -\fi -\expandafter\ifx \csname r@fancyanchorref:\the\fancycheckcount\endcsname \relax\else -\edef\fan@ttemp{r@fancyanchorref:\the\fancycheckcount}% -\expandafter\let\expandafter\fan@temp@w\csname \fan@ttemp\endcsname -\edef\fan@temp@ww{\expandafter\fancy@second\fan@temp@w}% -\fi -\ifx\fan@temp@ww\undefined\else -\fi + \expandafter\ifx \csname r@##1\endcsname \relax\else + \expandafter\let\expandafter\fancytooltip@temp@a\csname r@##1\endcsname + \edef\fan@tempa{\expandafter\fancy@second\fancytooltip@temp@a}% + \fi + \expandafter\ifx \csname r@fancyanchorref:\the\fancycheckcount\endcsname \relax\else + \expandafter\let\expandafter\fan@temp@w\csname r@fancyanchorref:\the\fancycheckcount\endcsname + \edef\fan@temp@ww{\expandafter\fancy@second\fan@temp@w}% + \fi +\if@fancytooltips@previewall\def\fan@tempa{not a page number}\fi \ifx\fan@tempa\fan@temp@ww\else\smash{% \let\TooltipExtratext\relax\tooltip{\strut\TooltipRefmark}{##1}}% \fi \hss}% -\fi} -\ifTooltip@usepdftex -\def\TooltipRefmark{\hbox {\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% - {fancytipmark.pdf}}}}}% +\fi}% +\ifx\NAT@citea@mbox\undefined +\def\@citex[##1]##2{\leavevmode + \let\@citea\@empty + \@cite{\@for\@citeb:=##2\do + {\@citea\def\@citea{,\penalty\@m\ }% + \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}% + \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi + \@ifundefined{b@\@citeb}{\hbox{\reset@font\bfseries ?}% + \G@refundefinedtrue + \@latex@warning + {Citation `\@citeb' on page \thepage \space undefined}}% + {\ifx\csname r@fancy:cite:\@citeb\endcsname\undefined \@cite@ofmt{\csname b@\@citeb\endcsname}\else\tooltip*{\@cite@ofmt{\csname b@\@citeb\endcsname}}{fancy:cite:\@citeb}\fi + }}}{##1}}% \else -\def\TooltipRefmark{\hbox {\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% - {fancytipmark.eps}}}}}% -\fi%\ifTooltip@usepdftex +\def\NAT@citea@mbox{% + \@citea\mbox{\NAT@hyper@{{\citenumfont{\NAT@num}}}}\tooltip*{}{fancy:cite:\@citeb}} +\fi } +\if@fancytooltips@nosoap + \def\TooltipRefmark{\hbox{\ }}% +\else + \ifTooltip@usepdftex + \def\TooltipRefmark{\hbox {\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% + {fancytipmark\@@fancytipmark.pdf}}}}}% + \else + \def\TooltipRefmark{\hbox {\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% + {fancytipmark.eps}}}}}% + \fi%\ifTooltip@usepdftex +\fi%\if@fancytooltips@nosoap + +\if@fancytooltips@preview\AtBeginDocument{\fancypreview@refhook}\fi + \if@fancytooltips@createtips \newwrite\tipfile \immediate\openout\tipfile \jobname.tips @@ -168,12 +201,17 @@ if (this.getField("animtiph") == null) \ifTooltip@usepdftex \RequirePackage[pdftex]{eforms} \def\TooltipExtratext{\hbox{\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% - {fancytipmark.pdf}}}}} + {fancytipmark\@@fancytipmark.pdf}}}}} \else \RequirePackage[dvips]{eforms} \def\TooltipExtratext{\hbox{\smash{\raisebox{0.4em}{\includegraphics[width=0.7em]% {fancytipmark.eps}}}}} \fi%\ifTooltip@usepdftex + +\if@fancytooltips@nosoap + \def\TooltipExtratext{\hbox{\ }}% +\fi%\if@fancytooltips@nosoap + \if@fancytooltips@extratext\else\let\TooltipExtratext\relax\fi \AtBeginDocument{ @@ -226,7 +264,8 @@ if (this.getField("animtiph") == null) \def\@ocg@makeknown#1#2#3{}\fi \fi -\if@fancytooltips@fg\else +\if@fancytooltips@fg +\else \RequirePackage{eso-pic} \def\frametip{% \expandafter\ifx \csname TooltipPage\thepage\endcsname\relax @@ -240,6 +279,7 @@ if (this.getField("animtiph") == null) \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}% + \global\let\fancytooltips@save@position\relax% } \def\fancy@beginshipout@hook{} @@ -248,7 +288,7 @@ if (this.getField("animtiph") == null) \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}% + \hbox to 0 pt{\box\AtBeginShipoutBox\hss}% \ifTooltip@usepdftex \fancytooltips@save@position \if@fancytooltips@blur @@ -260,16 +300,16 @@ if (this.getField("animtiph") == null) \vbox to 0 pt{\vss\hbox{\vrule width \paperwidth height \paperheight}}% \end{ocg}\hss}% \fi - \fi + \fi%\if@fancytooltips@blur \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 - }% + \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%\ifx + \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}\hss}}% + \fi%\if@fancytooltips@fg + \fi%\ifTooltip@usepdftex + \kern\hsize}% }% \definecolor{tooltipcolor}{rgb}{0,0,1} |