summaryrefslogtreecommitdiff
path: root/texmf-dist/tex
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2018-06-17 21:31:19 +0900
committerNorbert Preining <norbert@preining.info>2018-06-17 21:31:19 +0900
commit8b41f82b0607d2c788972454f29fff226a9dbf6a (patch)
tree6365c8af4050035157ce7754c95a8dc8b5859763 /texmf-dist/tex
parent45e5c2b549521b19955a525a7d2c42d69e391bfc (diff)
add datepicker-pro
Diffstat (limited to 'texmf-dist/tex')
-rw-r--r--texmf-dist/tex/latex/datepicker-pro/datepicker-pro.sty166
1 files changed, 166 insertions, 0 deletions
diff --git a/texmf-dist/tex/latex/datepicker-pro/datepicker-pro.sty b/texmf-dist/tex/latex/datepicker-pro/datepicker-pro.sty
new file mode 100644
index 00000000..705a3c70
--- /dev/null
+++ b/texmf-dist/tex/latex/datepicker-pro/datepicker-pro.sty
@@ -0,0 +1,166 @@
+%%
+%% This is file `datepicker-pro.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% datepicker-pro.dtx (with options: `copyright,package')
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% datepicker-pro.sty package, 2016-05-06 %%
+%% Copyright (C) 2013-16 D. P. Story %%
+%% dpstory@acrotex.net %%
+%% %%
+%% This program can redistributed and/or modified under %%
+%% the terms of the LaTeX Project Public License %%
+%% Distributed from CTAN archives in directory %%
+%% macros/latex/base/lppl.txt; either version 1 of the %%
+%% License, or (at your option) any later version. %%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{datepicker-pro}
+ [2016/05/06 v1.0 Date picker using FLEX]
+\RequirePackage{aeb_pro}[2013/08/05]
+\RequirePackage{eforms}[2013/06/05]
+\RequirePackage{rmannot}[2011/09/11]
+\newcommand{\useFLEXVer}[1]{\def\argi{#1}\ifnum\argi=3\relax
+ \def\flexVer{3}\else\ifnum\argi=4\relax\def\flexVer{4}\else
+ \def\flexVer{3}\PackageInfo{datepicker-pro}{FLEX version number not
+ supported,\space\MessageBreak using FLEX 3}\fi\fi}
+\def\flexVer{3}
+\@onlypreamble\useFLEXVer
+\newcommand{\dppToolTip}[1]{\def\dpp@ToolTip{#1}}
+\dppToolTip{Date Picker\n Click to toggle open and close\n
+ Shift-click to clear and close}
+\newcommand{\pickerOpts}[1]{\def\dpp@pickerOpts{#1}}
+ \pickerOpts{}
+\newcommand{\pickerInputOpts}[1]{\def\dpp@pickerInputOpts{#1}}
+ \pickerInputOpts{}
+\newcommand{\pickersep}{3bp}
+\define@key{ddp}{formatstring}[MM/DD/YYYY]{\def\dpp@FormatStr{#1}}
+\define@key{ddp}{daynames}[]{\def\ddp@DayNames{#1}}
+\define@key{ddp}{monthnames}[]{\def\ddp@MonthNames{#1}}
+\def\warningMsgFirstDay{%
+ The value of firstday must be a\MessageBreak
+ nonnegative integer less than 6.\MessageBreak
+ Setting firstday=0%
+}
+\define@key{ddp}{firstday}[0]{%
+ \@tempcnta=#1
+ \def\ddp@FirstDayOfWeek{#1}%
+ \ifnum\@tempcnta<0\relax\PackageWarning{datepicker-pro}
+ {\warningMsgFirstDay}{}\def\ddp@FirstDayOfWeek{0}\else
+ \ifnum\@tempcnta>6\relax\PackageWarning{datepicker-pro}
+ {\warningMsgFirstDay}{}\def\ddp@FirstDayOfWeek{0}\fi\fi
+}
+\define@key{ddp}{monthnamesLong}[]{\def\ddp@monthnamesLong{#1}}
+\define@key{ddp}{monthnamesShort}[]{\def\ddp@monthnamesShort{#1}}
+\define@key{ddp}{daynamesLong}[]{\def\ddp@daynamesLong{#1}}
+\define@key{ddp}{daynamesShort}[]{\def\ddp@daynamesShort{#1}}
+\define@key{ddp}{halign}[center]{\def\ddp@halign{#1}}
+\define@key{ddp}{valign}[center]{\def\ddp@valign{#1}}
+\define@key{ddp}{hoffset}[0]{\def\ddp@hoffset{#1}}
+\define@key{ddp}{voffset}[0]{\def\ddp@voffset{#1}}
+\define@key{ddp}{widthOfWindow}[180]{\def\ddp@widthOfWindow{#1}}
+\define@key{ddp}{heightOfWindow}[180]{\def\ddp@heightOfWindow{#1}}
+\newcommand{\setPickerOpts}[1]{%
+ \edef\@tempexp{\noexpand\setkeys{ddp}{#1}}\@tempexp}
+\newcommand{\setPickerOptsToDefaults}{%
+ \setkeys{ddp}{formatstring,daynames,monthnames,firstday,halign,%
+ valign,hoffset,voffset,widthOfWindow,heightOfWindow,%
+ monthnamesLong,monthnamesShort,daynamesLong,daynamesShort}%
+}
+\setPickerOptsToDefaults
+\def\dppBtnAction#1{%
+ var annot = this.getAnnotRichMedia(this.pageNum,"#1");\r
+ if (event.shift){\r\t
+ this.resetForm(["txt#1"]);\r\t
+ annot.activated=false;\r
+ } else {
+ if ( annot.activated )
+ annot.activated=false;
+ else annot.activated=true;
+ }
+}
+\newcommand{\datepicker}[4][]{\begingroup
+ \edef\@tempexp{\noexpand\setkeys{ddp}{#1}}\@tempexp
+ \setWindowDimPos{width={default=\ddp@widthOfWindow},%
+ height={default=\ddp@heightOfWindow},%
+ position={halign=\ddp@halign,valign=\ddp@valign,
+ hoffset=\ddp@hoffset,voffset=\ddp@voffset}}%
+ \makebox[0pt][l]{\textField[\F{\FHidden}\BC{}\BG{}\W0
+ ]{htxt#2}{1bp}{1bp}}%
+ \expandafter\textField\expandafter[\dpp@pickerInputOpts\Ff{\FfReadOnly}
+ \AA{\AAValidate{%
+ this.getAnnotRichMedia(this.pageNum,"#2").activated=false;}
+ }]{txt#2}{#3}{#4}\makebox[0pt][r]{%
+ \rmAnnot[invisible,transparentBG,deactivated=pageclose,
+ passcontext,\dpp@pickerOpts,windowed,name=#2,
+ flashvars={field=txt#2&formatstring=\dpp@FormatStr
+ \ifx\ddp@DayNames\@empty\else
+ &daynames=\ddp@DayNames\fi
+ \ifx\ddp@MonthNames\@empty\else
+ &monthnames=\ddp@MonthNames\fi
+ \ifnum\ddp@FirstDayOfWeek=0 \else
+ &firstday=\ddp@FirstDayOfWeek\fi
+ \ifx\ddp@monthnamesLong\@empty\else
+ &monthnamesLong=\ddp@monthnamesLong\fi
+ \ifx\ddp@monthnamesShort\@empty\else
+ &monthnamesShort=\ddp@monthnamesShort\fi
+ \ifx\ddp@daynamesLong\@empty\else
+ &daynamesLong=\ddp@daynamesLong\fi
+ \ifx\ddp@daynamesShort\@empty\else
+ &daynamesShort=\ddp@daynamesShort\fi
+ }
+ ]{4bp}{4bp}{dppDatePicker}}\kern\pickersep
+ \pushButton[\TU{\dpp@ToolTip}\H{O}\S{S}\BC{}\BG{}
+ \FB{true}\I{null}\TP{1}\A{\JS{\dppBtnAction{#2}}}
+ ]{btn#2}{\dp@iconWidth}{\dp@iconHeight}\endgroup
+}
+\newcommand{\setpickerIcon}[2]{% #1=path, #2=placement
+ \let\@thesetoks\@empty
+ \@for\@dppName:=#2\do{\edef\@thesetoks{\@thesetoks btn\@dppName,}}%
+ \def\stripOffComma##1,\@nil{\def\@placeIcons{##1}}%
+ \expandafter\stripOffComma\@thesetoks\@nil
+ \declareImageAndPlacement{name=dppIcon,path=#1,%
+ placement={\@placeIcons}}%
+ \immediate\openout\CommentStream=ddpdocassmbly.cut
+ \immediate\write\CommentStream{\string\begin{execJS}{dppicons}}%
+ \immediate\write\CommentStream{\string\insertPreDocAssembly}%
+ \immediate\write\CommentStream{\string\end{execJS}}%
+ \immediate\closeout\CommentStream
+ \input{ddpdocassmbly.cut}%
+}
+\@onlypreamble\setpickerIcon
+\newcommand\pickerIconWidth[1]{\def\dp@iconWidth{#1}}
+\pickerIconWidth{10bp}
+\newcommand\pickerIconHeight[1]{\def\dp@iconHeight{#1}}
+\pickerIconHeight{12bp}
+\begin{insDLJS}{dppdljs}{JavaScript for Date Picker Pro}
+function setDateField(fname,value,svalue) {
+ var f = this.getField(fname);
+ var g = this.getField("h"+fname);
+ if (f !=null ) {
+ f.value = value;
+ g.value = svalue;
+ }
+}
+function getDateValue(fname) {
+ var f = this.getField(fname);
+ var g = this.getField("h"+fname);
+ var value;
+ if ( f != null )
+ value = { value: f.value, svalue: g.value };
+ return value;
+}
+\end{insDLJS}
+\def\dpp@initdpp{%
+ \@ifundefined{dppPath}{\PackageError{datepicker-pro}
+ {You must specify the path to datepicker\flexVer.swf\MessageBreak
+ by defining \string\dppPath, see documentation}{}}
+ {\saveNamedPath{dppDatePicker}{\dppPath/datepicker\flexVer.swf}}%
+}
+\AtBeginDocument{\dpp@initdpp}
+\endinput
+%%
+%% End of file `datepicker-pro.sty'.