summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/hyperref/pdfmark.def
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/hyperref/pdfmark.def')
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/pdfmark.def214
1 files changed, 119 insertions, 95 deletions
diff --git a/Master/texmf-dist/tex/latex/hyperref/pdfmark.def b/Master/texmf-dist/tex/latex/hyperref/pdfmark.def
index dcb307d2f3b..29505d09755 100644
--- a/Master/texmf-dist/tex/latex/hyperref/pdfmark.def
+++ b/Master/texmf-dist/tex/latex/hyperref/pdfmark.def
@@ -7,6 +7,8 @@
%% hyperref.dtx (with options: `pdfmark,pdfmarkbase,pdfform,outlines')
%%
%% File: hyperref.dtx Copyright 1995-2001 Sebastian Rahtz,
+%% with portions written by David Carlisle and Heiko Oberdiek,
+%% 2001-2007 Heiko Oberdiek.
%%
%% This file is part of the `Hyperref Bundle'.
%% -------------------------------------------
@@ -22,7 +24,7 @@
%% given in the file `manifest.txt'.
%%
\ProvidesFile{pdfmark.def}
- [2007/06/14 v6.76i
+ [2007/10/30 v6.77b
Hyperref definitions for pdfmark specials]
\def\Hy@PutCatalog#1{%
\pdfmark{pdfmark=/PUT,Raw={\string{Catalog\string} << #1 >>}}%
@@ -254,6 +256,11 @@
}%
\fi
}
+\g@addto@macro\Hy@EveryPageBoxHook{%
+ \hyper@pagetransition
+ \hyper@pageduration
+ \hyper@pagehidden
+}
\def\hyper@image#1#2{%
\hyper@linkurl{#2}{#1}%
}
@@ -619,7 +626,7 @@
Action={%
<<%
/S/GoToR%
- \ifHy@newwindow /NewWindow true\fi
+ \Hy@SetNewWindow
/F(\Hy@pstringF)%
/D\ifx\\#3\\[0 \@pdfstartview]\else(\Hy@pstringD)cvn\fi
>>%
@@ -643,7 +650,7 @@
Action={%
<<%
/S/Launch%
- \ifHy@newwindow /NewWindow true\fi
+ \Hy@SetNewWindow
/F(\Hy@pstringF)%
\ifx\\#3\\%
\else
@@ -655,7 +662,7 @@
\endgroup
}
\long\def\@Form[#1]{%
-\AtBeginDvi{%
+\AtBeginShipoutFirst{%
\headerps@out{%
[%
/_objdef{pdfDocEncoding}%
@@ -837,19 +844,19 @@
\def\Fld@default{}%
\let\Fld@value\@empty
\def\Fld@width{\DefaultWidthofText}%
- \def\Fld@height{\DefaultHeightofText}%
- \ifFld@multiline
- \begingroup
- \dimen@=\DefaultHeightofText
- \dimen@=4\dimen@
- \edef\x{\endgroup
- \def\noexpand\Fld@height{\the\dimen@}%
- }%
- \x
- \fi
- \bgroup
+ \def\Fld@height{%
+ \ifFld@multiline
+ \DefaultHeightofTextMultiline
+ \else
+ \DefaultHeightofText
+ \fi
+ }%
+ \begingroup
\Field@toks={ }%
- \setkeys{Field}{#1}%
+ \expandafter\HyField@SetKeys\expandafter{%
+ \DefaultOptionsofText,#1%
+ }%
+ \HyField@FlagsText
\ifFld@hidden\def\Fld@width{1sp}\fi
\ifx\Fld@value\@empty\def\Fld@value{\Fld@default}\fi
\LayoutTextField{#2}{%
@@ -858,7 +865,7 @@
pdfmark=/ANN,Raw={\PDFForm@Text}%
}%
}%
- \egroup
+ \endgroup
}
\def\@ChoiceMenu[#1]#2#3{% parameters, label, choices
\def\Fld@name{#2}%
@@ -866,7 +873,7 @@
\let\Fld@value\relax
\def\Fld@width{\DefaultWidthofChoiceMenu}%
\def\Fld@height{\DefaultHeightofChoiceMenu}%
- \bgroup
+ \begingroup
\Fld@menulength=0 %
\@tempdima\z@
\@for\@curropt:=#3\do{%
@@ -877,34 +884,57 @@
}%
\advance\@tempdima by 15\p@
\Field@toks={ }%
- \setkeys{Field}{#1}%
+ \begingroup
+ \HyField@SetKeys{#1}%
+ \edef\x{\endgroup
+ \noexpand\expandafter
+ \noexpand\HyField@SetKeys
+ \noexpand\expandafter{%
+ \expandafter\noexpand\csname DefaultOptionsof%
+ \ifFld@radio
+ Radio%
+ \else
+ \ifFld@combo
+ \ifFld@popdown
+ PopdownBox%
+ \else
+ ComboBox%
+ \fi
+ \else
+ ListBox%
+ \fi
+ \fi
+ \endcsname
+ }%
+ }\x
+ \HyField@SetKeys{#1}%
\ifFld@hidden\def\Fld@width{1sp}\fi
\ifx\Fld@value\relax
\let\Fld@value\Fld@default
\fi
\LayoutChoiceField{#2}{%
\ifFld@radio
+ \HyField@FlagsRadioButton
\@@Radio{#3}%
\else
- {%
+ \begingroup
+ \HyField@FlagsChoice
\ifdim\Fld@width<\@tempdima
\ifdim\@tempdima<1cm\@tempdima1cm\fi
\edef\Fld@width{\the\@tempdima}%
\fi
- \def\Fld@flags{}%
- \ifFld@combo\def\Fld@flags{/Ff 917504}\fi
- \ifFld@popdown\def\Fld@flags{/Ff 131072}\fi
- \ifx\Fld@flags\@empty
+ \ifFld@combo
+ \else
\@tempdima=\the\Fld@menulength\Fld@charsize
\advance\@tempdima by \Fld@borderwidth bp %
\advance\@tempdima by \Fld@borderwidth bp %
\edef\Fld@height{\the\@tempdima}%
\fi
\@@Listbox{#3}%
- }%
+ \endgroup
\fi
}%
- \egroup
+ \endgroup
}
\def\@@Radio#1{%
\Fld@listcount=0 %
@@ -921,15 +951,7 @@
}
\newcount\Fld@listcount
\def\@@Listbox#1{%
- \Choice@toks={ }%
- \Fld@listcount=0 %
- \@for\@curropt:=#1\do{%
- \expandafter\Fld@checkequals\@curropt==\\%
- \Hy@StepCount\Fld@listcount
- \edef\@processme{%
- \Choice@toks{\the\Choice@toks [(\@currValue) (\@currDisplay)]}%
- }\@processme
- }%
+ \HyField@PDFChoices{#1}%
\Hy@escapeform\PDFForm@List
\pdfmark[\MakeChoiceField{\Fld@width}{\Fld@height}]{%
pdfmark=/ANN,Raw={\PDFForm@List}%
@@ -937,9 +959,12 @@
}
\def\@PushButton[#1]#2{% parameters, label
\def\Fld@name{#2}%
- \bgroup
+ \begingroup
\Field@toks={ }%
- \setkeys{Field}{#1}%
+ \expandafter\HyField@SetKeys\expandafter{%
+ \DefaultOptionsofPushButton,#1%
+ }%
+ \HyField@FlagsPushButton
\ifFld@hidden\def\Fld@width{1sp}\fi
\LayoutPushButtonField{%
\Hy@escapeform\PDFForm@Push
@@ -947,45 +972,53 @@
pdfmark=/ANN,Raw={\PDFForm@Push}%
}%
}%
- \egroup
+ \endgroup
}
\def\@Submit[#1]#2{%
\Field@toks={ }%
\def\Fld@width{\DefaultWidthofSubmit}%
\def\Fld@height{\DefaultHeightofSubmit}%
- \bgroup
- \def\Fld@name{Submit}%
- \setkeys{Field}{#1}%
+ \begingroup
+ \expandafter\HyField@SetKeys\expandafter{%
+ \DefaultOptionsofSubmit,#1%
+ }%
+ \HyField@FlagsPushButton
+ \HyField@FlagsSubmit
\ifFld@hidden\def\Fld@width{1sp}\fi
\Hy@escapeform\PDFForm@Submit
\pdfmark[\MakeButtonField{#2}]{%
pdfmark=/ANN,%
Raw={\PDFForm@Submit /AP << /N {Submit} /D {SubmitP} >>}%
}%
- \egroup
+ \endgroup
}
\def\@Reset[#1]#2{%
\Field@toks={ }%
\def\Fld@width{\DefaultWidthofReset}%
\def\Fld@height{\DefaultHeightofReset}%
- \bgroup
- \def\Fld@name{Reset}%
- \setkeys{Field}{#1}%
+ \begingroup
+ \expandafter\HyField@SetKeys\expandafter{%
+ \DefaultOptionsofReset,#1%
+ }%
+ \HyField@FlagsPushButton
\ifFld@hidden\def\Fld@width{1sp}\fi
\Hy@escapeform\PDFForm@Reset
\pdfmark[\MakeButtonField{#2}]{%
pdfmark=/ANN,Raw={\PDFForm@Reset}%
}%
- \egroup
+ \endgroup
}
\def\@CheckBox[#1]#2{% parameters, label
\def\Fld@name{#2}%
\def\Fld@default{0}%
- \bgroup
+ \begingroup
\def\Fld@width{\DefaultWidthofCheckBox}%
\def\Fld@height{\DefaultHeightofCheckBox}%
\Field@toks={ }%
- \setkeys{Field}{#1}%
+ \expandafter\HyField@SetKeys\expandafter{%
+ \DefaultOptionsofCheckBox,#1%
+ }%
+ \HyField@FlagsCheckBox
\ifFld@hidden\def\Fld@width{1sp}\fi
\LayoutCheckField{#2}{%
\Hy@escapeform\PDFForm@Check
@@ -993,7 +1026,7 @@
pdfmark=/ANN,Raw={\PDFForm@Check}%
}%
}%
- \egroup
+ \endgroup
}
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname pdfescapestring\endcsname\relax
@@ -1036,10 +1069,23 @@
}%
\Hy@escapeform{}%
\fi
+\def\PDFForm@Name{%
+ \begingroup
+ \ifnum\Hy@pdfversion<5 % implementation note 117, PDF spec 1.7
+ \ifHy@unicode
+ \Hy@unicodefalse
+ \fi
+ \fi
+ \pdfstringdef\Hy@gtemp\Fld@name
+ \endgroup
+ \let\Fld@name\Hy@gtemp
+}
\def\PDFForm@Check{%
/Subtype/Widget%
- \ifFld@hidden /F 6\else /F 4\fi
- /T(\Hy@escapestring{\Fld@name})%
+ \Fld@annotflags
+ /T(\Fld@name)%
+ /FT/Btn%
+ \Fld@flags
/Q \Fld@align
/BS<</W \Fld@borderwidth /S/\Fld@borderstyle>>%
/MK<<%
@@ -1059,16 +1105,15 @@
>>%
/DA(/ZaDb \strip@pt\Fld@charsize\space Tf%
\ifx\Fld@color\@empty\else\space\Fld@color\fi)%
- /FT/Btn%
/H/P%
\ifFld@checked /V/Yes\else /V/Off\fi
}
\def\PDFForm@Push{%
/Subtype/Widget%
- \ifFld@hidden /F 6\else /F 4\fi
- /T(\Hy@escapestring{\Fld@name})%
+ \Fld@annotflags
+ /T(\Fld@name)%
/FT/Btn%
- /Ff 65540%
+ \HyField@flags
/H/P%
/BS<</W \Fld@borderwidth/S/\Fld@borderstyle>>%
/MK<<%
@@ -1133,11 +1178,12 @@
}
\def\PDFForm@List{%
/Subtype/Widget%
- \ifFld@hidden /F 6\else /F 4\fi
- /T(\Hy@escapestring{\Fld@name})%
+ \Fld@annotflags
+ /T(\Fld@name)%
/FT/Ch%
+ \Fld@flags
/Q \Fld@align
- /BS<</W \Fld@borderwidth /S/\Fld@borderstyle>>%
+ /BS<</W \Fld@borderwidth/S/\Fld@borderstyle>>%
/MK<<%
\ifnum\Fld@rotation=\z@
\else
@@ -1154,24 +1200,15 @@
>>%
/DA(/Helv \strip@pt\Fld@charsize\space Tf%
\ifx\Fld@color\@empty\else\space\Fld@color\fi)%
- /Opt[\the\Choice@toks]%
- \ifx\Fld@default\relax
- \else
- /DV(\Hy@escapestring{\Fld@default})%
- \fi
- \ifx\Fld@value\relax
- \else
- /V(\Hy@escapestring{\Fld@value})%
- \fi
+ \Fld@choices
\Fld@additionalactions
- \Fld@flags
}
\def\PDFForm@Radio{%
/Subtype/Widget%
- \ifFld@hidden /F 6\else /F 4\fi
- /T(\Hy@escapestring{\Fld@name})%
+ \Fld@annotflags
+ /T(\Fld@name)%
/FT/Btn%
- /Ff 49152%
+ \Fld@flags
/H/P%
/BS<</W \Fld@borderwidth/S/\Fld@borderstyle>>%
/MK<<%
@@ -1200,10 +1237,11 @@
}
\def\PDFForm@Text{%
/Subtype/Widget%
- \ifFld@hidden /F 6\else /F 4\fi
- /T(\Hy@escapestring{\Fld@name})%
- /Q \Fld@align
+ \Fld@annotflags
+ /T(\Fld@name)%
/FT/Tx%
+ \Fld@flags
+ /Q \Fld@align
/BS<</W \Fld@borderwidth\space /S /\Fld@borderstyle>>%
/MK<<%
\ifnum\Fld@rotation=\z@
@@ -1224,23 +1262,14 @@
/DV(\Hy@escapestring{\Fld@default})%
/V(\Hy@escapestring{\Fld@value})%
\Fld@additionalactions
- \ifFld@multiline
- \ifFld@readonly /Ff 4097\else /Ff 4096\fi
- \else
- \ifFld@password
- \ifFld@readonly /Ff 8193\else /Ff 8192\fi
- \else
- \ifFld@readonly /Ff 1\fi
- \fi
- \fi
\ifnum\Fld@maxlen>\z@/MaxLen \Fld@maxlen \fi
}
\def\PDFForm@Submit{%
/Subtype/Widget%
- \ifFld@hidden /F 6\else /F 4\fi
- /T(\Hy@escapestring{\Fld@name})%
+ \Fld@annotflags
+ /T(\Fld@name)%
/FT/Btn%
- /Ff 65540%
+ \Fld@flags
/H/P%
/BS<</W \Fld@borderwidth/S/\Fld@borderstyle>>%
/MK<<%
@@ -1259,17 +1288,17 @@
/FS/URL%
/F(\Hy@escapestring{\Form@action})%
>>%
- \ifForm@html /Flags 4\fi
+ \Fld@submitflags
>>%
}
\def\PDFForm@Reset{%
/Subtype/Widget%
- \ifFld@hidden /F 6\else /F 4\fi
- /T(\Hy@escapestring{\Fld@name})%
+ \Fld@annotflags
+ /T(\Fld@name)%
/FT/Btn%
+ \Fld@flags
/H/P%
/DA(/Helv \strip@pt\Fld@charsize\space Tf 0 0 1 rg)%
- /Ff 65540%
/MK<<%
\ifnum\Fld@rotation=\z@
\else
@@ -1420,11 +1449,6 @@
}
\ifHy@implicit
\else
- \def\@begindvi{%
- \unvbox\@begindvibox
- \HyPL@EveryPage
- \global\let\@begindvi\HyPL@EveryPage
- }%
\expandafter\endinput
\fi
\let\H@old@ssect\@ssect