summaryrefslogtreecommitdiff
path: root/macros/context/contrib/context-animation/tex/context/third/animation/t-animation.mkvi
diff options
context:
space:
mode:
Diffstat (limited to 'macros/context/contrib/context-animation/tex/context/third/animation/t-animation.mkvi')
-rw-r--r--macros/context/contrib/context-animation/tex/context/third/animation/t-animation.mkvi363
1 files changed, 0 insertions, 363 deletions
diff --git a/macros/context/contrib/context-animation/tex/context/third/animation/t-animation.mkvi b/macros/context/contrib/context-animation/tex/context/third/animation/t-animation.mkvi
deleted file mode 100644
index 62f960c9ad..0000000000
--- a/macros/context/contrib/context-animation/tex/context/third/animation/t-animation.mkvi
+++ /dev/null
@@ -1,363 +0,0 @@
-%D \module
-%D [ file=t-animation,
-%D version=2013.04.07,
-%D title=\CONTEXT\ User Module,
-%D subtitle=Animations,
-%D author=Wolfgang Schuster,
-%D date=\currentdate,
-%D copyright=Wolfgang Schuster,
-%D license=GNU General Public License]
-
-%C Copyright (C) 2011 Wolfgang Schuster
-%C
-%C This program is free software: you can redistribute it and/or modify
-%C it under the terms of the GNU General Public License as published by
-%C the Free Software Foundation, either version 3 of the License, or
-%C (at your option) any later version.
-%C
-%C This program is distributed in the hope that it will be useful,
-%C but WITHOUT ANY WARRANTY; without even the implied warranty of
-%C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-%C GNU General Public License for more details.
-%C
-%C You should have received a copy of the GNU General Public License
-%C along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-% begin info
-%
-% title : animations
-% comment : simple interface to generate animations which are based on the fieldstack mechanism
-% status : useable in documents and modules
-%
-% end info
-
-%M \loadsetups[t-animation.xml]
-
-%D \showsetup{startanimation}
-%D \showsetup{defineanimation}
-%D \showsetup{setupanimation}
-
-\unprotect
-
-\startinterface all
- \setinterfacevariable {animation} {animation}
-\stopinterface
-
-\startinterface all
- \setinterfaceconstant {menustyle} {menustyle}
- \setinterfaceconstant {menucolor} {menucolor}
- \setinterfaceconstant {framerate} {framerate}
-\stopinterface
-
-\installnamespace {animation}
-\installnamespace {animationmenu}
-\installnamespace {animationrenderings}
-
-\installframedcommandhandler \????animation {animation} \????animation
-\installcommandhandler \????animationmenu {animationmenu} \????animationmenu
-
-\appendtoks
- \setuevalue{\e!start\currentanimation}{\animation_beg{\currentanimation}}%
- \setuevalue{\e!stop \currentanimation}{\animation_end }%
-\to \everydefineanimation
-
-\newcount\animation_current
-\newcount\animation_frame
-
-\edef\m_animation_signal_pause{+}
-
-\ifdefined\s!repeat \else \def\s!repeat {repeat} \fi
-\ifdefined\s!once \else \def\s!once {once} \fi
-\ifdefined\s!pause \else \def\s!pause {pause} \fi
-\ifdefined\s!FirstFrame \else \def\s!FirstFrame {FirstFrame} \fi
-\ifdefined\s!PreviousFrame \else \def\s!PreviousFrame {PreviousFrame} \fi
-\ifdefined\s!StartAnimation \else \def\s!StartAnimation{StartAnimation} \fi
-\ifdefined\s!StopAnimation \else \def\s!StopAnimation {StopAnimation} \fi
-\ifdefined\s!NextFrame \else \def\s!NextFrame {NextFrame} \fi
-\ifdefined\s!LastFrame \else \def\s!LastFrame {LastFrame} \fi
-
-\unexpanded\def\animation_beg#environment%
- {\begingroup
- \edef\currentanimation{#environment}%
- \dodoubleempty\animation_beg_parameters}
-
-\def\animation_beg_parameters
- {\iffirstargument
- \ifsecondargument
- \doubleexpandafter\animation_beg_parameters_two
- \else
- \doubleexpandafter\animation_beg_parameters_one
- \fi
- \else
- \expandafter\animation_beg_parameters_zero
- \fi}
-
-\def\animation_beg_parameters_zero[#name][#parameters]%
- {\global\advance\animation_current\plusone
- \animation_beg_parameters_two[\number\animation_current][]}
-
-\def\animation_beg_parameters_one[#name][#parameters]%
- {\doifassignmentelse{#name}
- {\global\advance\animation_current\plusone
- \animation_beg_parameters_two[\number\animation_current][#name]}
- {\animation_beg_parameters_two[#name][]}}
-
-\def\animation_beg_parameters_two[#name][#parameters]%
- {\edef\animation_name{\currentanimation:#name}%
- \setupcurrentanimation
- [#parameters,
- \c!align=\v!middle,
- \c!background={\v!foreground,\animation_name},
- \c!offset=\v!overlay]%
- \animation_initialize
- \animation_symbols
- \doifnextbgroupelse\animation_frame_grouped\donothing}
-
-\def\animation_symbols
- {\definesymbol[\s!FirstFrame ][\symbol\v!firstpage ]%
- \definesymbol[\s!PreviousFrame ][\symbol\v!PreviousJump]%
- \definesymbol[\s!StartAnimation][\symbol\v!StartMovie ]%
- \definesymbol[\s!StopAnimation ][\symbol\v!StopMovie ]%
- \definesymbol[\s!NextFrame ][\symbol\v!NextJump ]%
- \definesymbol[\s!LastFrame ][\symbol\v!lastpage ]}
-
-\def\animation_initialize
- {\animation_frame\zerocount
- \let\m_animation_symbols\empty
- \let\m_animation_pause \empty
- \let\startframe\animation_frame_start
- \let\stopframe \relax
- \let\frame \animation_frame_direct}
-
-\unexpanded\def\animation_end
- {\normalexpanded{\definefieldstack[\animation_name][\m_animation_symbols][]}%
- %
- \edef\p_animation_repeat{\animationparameter\c!repeat}%
- \ifx\p_animation_repeat\v!no
- \let\p_animation_repeat\s!once
- \else
- \let\p_animation_repeat\s!repeat
- \fi
- %
- \edef\p_animation_list{\animationparameter\c!list}%
- \ifx\m_animation_pause\empty \else
- \let\p_animation_list\m_animation_pause
- \fi
- %
- \edef\currentanimationmenu{\animationparameter\c!menu}%
- \edef\p_animation_renderingsetup{\animationmenuparameter\c!renderingsetup}%
- \doifsetupselse\p_animation_renderingsetup
- {\texsetup\p_animation_renderingsetup}
- {\texsetup{\????animationrenderings:\v!no}}%
- \endgroup}
-
-%D \extras
-%D {menu}
-%D
-%D \subject{Control buttons}
-%D
-%D Animations are useless without any method to enable them, one way
-%D is to use \tex{goto} command (e.g. \type{\goto{...}[JS(Walk_Field{<NAME>})]})
-%D where you go to the next frame with each click. A different way to control
-%D the animation is the menu, which can be a row with buttons below the animation
-%D or a link above the graphic.
-%D
-%D The module provides for this the following values for the menu key:
-%D
-%D \startitemize[packed]
-%D \startitem no (usefull when you use the \tex{goto} command) \stopitem
-%D \startitem yes (places a row with buttons below the animation) \stopitem
-%D \startitem overlay (creates a button over the animation) \stopitem
-%D \stopitemize
-
-\defineanimationmenu[\v!yes ][\c!renderingsetup=\????animationrenderings:\v!yes ]
-\defineanimationmenu[\v!no ][\c!renderingsetup=\????animationrenderings:\v!no ]
-\defineanimationmenu[\v!overlay][\c!renderingsetup=\????animationrenderings:\v!overlay]
-
-\startsetups[\????animationrenderings:\v!yes]
-
- \defineviewerlayer[\animation_name:\v!start][\c!state=\v!start]
- \defineviewerlayer[\animation_name:\v!stop ][\c!state=\v!stop ]
-
- \inheritedanimationframed\bgroup
-
- \fieldstack[\animation_name]
-
- \blank[\v!medium]% \animationparameter\c!inbetween
-
- \dontleavehmode\hbox\bgroup
-
- \setupinteraction[\c!style=,\c!color=,\c!contrastcolor=]% Use only "menustyle" and "menucolor"!
- \useanimationstyleandcolor\c!menustyle\c!menucolor
-
- \setupsymbolset[\animationparameter\c!symbolset]
-
- \gotobox
- {\symbol\s!FirstFrame}
- [JS(Reset_Walk_Field{\animation_name}),
- HideLayer{\animation_name:\v!stop },
- VideLayer{\animation_name:\v!start}]
-
- \dotfskip{\animationparameter\c!distance}
-
- \gotobox
- {\symbol\s!PreviousFrame}
- [JS(Previous_Walk_Field{\animation_name}),
- HideLayer{\animation_name:\v!stop },
- VideLayer{\animation_name:\v!start}]
-
- \dotfskip{\animationparameter\c!distance}
-
- \ifx\p_animation_list\empty
-
- \gotobox
- {\setbox\scratchbox\hbox{\symbol\s!StopAnimation}
- \startoverlay
- {\startviewerlayer[\animation_name:\v!stop]
- \hbox to \wd\scratchbox{\symbol\s!StopAnimation}
- \stopviewerlayer}
- {\startviewerlayer[\animation_name:\v!start]
- \hbox to \wd\scratchbox{\hss\symbol\s!StartAnimation\hss}
- \stopviewerlayer}
- \stopoverlay}
- [JS(Start_Pause_Walk_Field{\animation_name,\cldcontext{math.round(1000/\number\animationparameter\c!framerate)},\p_animation_repeat}),
- ToggleLayer{\animation_name:\v!stop },
- ToggleLayer{\animation_name:\v!start}]
-
- \else
-
- \gotobox
- {\symbol\s!StartAnimation}
- [JS(Start_Pause_Walk_Field{\animation_name,\cldcontext{math.round(1000/\number\animationparameter\c!framerate)},\s!pause,\p_animation_list}),
- ToggleLayer{\animation_name:\v!stop },
- ToggleLayer{\animation_name:\v!start}]
-
- \fi
-
- \dotfskip{\animationparameter\c!distance}
-
- \gotobox
- {\symbol\s!NextFrame}
- [JS(Next_Walk_Field{\animation_name}),
- HideLayer{\animation_name:\v!stop },
- VideLayer{\animation_name:\v!start}]
-
- \dotfskip{\animationparameter\c!distance}
-
- \gotobox
- {\symbol\s!LastFrame}
- [JS(Stop_Walk_Field{\animation_name}),
- JS(Set_Field{\animation_name,\number\animation_frame}),
- HideLayer{\animation_name:\v!stop },
- VideLayer{\animation_name:\v!start}]%
-
- \egroup
-
- \egroup
-
-\stopsetups
-
-\startsetups[\????animationrenderings:\v!no]
-
- \inheritedanimationframed{\fieldstack[\animation_name]}
-
-\stopsetups
-
-\startsetups[\????animationrenderings:\v!overlay]
-
- \defineoverlay[\animation_name][\overlaybutton{Walk{\animation_name}}]
-
- \inheritedanimationframed{\fieldstack[\animation_name]}
-
-\stopsetups
-
-%D \macros
-%D {frame,startframe}
-%D
-%D The content for each frame can be set with two methods, the first is to
-%D enclose the code in brackets like you do in the overlay environment.
-%D
-%D \starttyping
-%D \startanimation
-%D {FRAME 1}
-%D {FRAME 2}
-%D \stopanimation
-%D \stoptyping
-%D
-%D The second method is the modern variant with start/stop-tags to enclose
-%D each frame, you can either you use \tex{frame} command which takes
-%D a argument, e.g.
-%D
-%D \starttyping
-%D \startanimation
-%D \frame{FRAME 1}
-%D \frame{FRAME 2}
-%D \stopanimation
-%D \stoptyping
-%D
-%D or you use the \type{frame} environment which delimits each frame
-%D by the start and stop tags.
-%D
-%D \starttyping
-%D \startanimation
-%D \startframe FRAME 1 \stopframe
-%D \startframe FRAME 2 \stopframe
-%D \stopanimation
-%D \stoptyping
-
-\unexpanded\def\animation_frame_grouped#content%
- {\advance\animation_frame\plusone
- \edef\animation_currentframe{\animation_name:\number\animation_frame}%
- \appendtocommalist\animation_currentframe\m_animation_symbols
- \definesymbol[\animation_currentframe][{#content}]%
- \doifnextbgroupelse\animation_frame_grouped\donothing}
-
-\unexpanded\def\animation_frame_direct
- {\dosingleempty\animation_frame_direct_indeed}
-
-\def\animation_frame_direct_indeed[#signal]#content%
- {\advance\animation_frame\plusone
- \edef\m_animation_signal{#signal}%
- \ifx\m_animation_signal\m_animation_signal_pause
- \appendtocommalist{\number\animation_frame}\m_animation_pause
- \fi
- \edef\animation_currentframe{\animation_name:\number\animation_frame}%
- \appendtocommalist\animation_currentframe\m_animation_symbols
- \definesymbol[\animation_currentframe][{#content}]}
-
-\unexpanded\def\animation_frame_start
- {\dosingleempty\animation_frame_start_indeed}
-
-\def\animation_frame_start_indeed[#signal]#content\stopframe
- {\advance\animation_frame\plusone
- \edef\m_animation_signal{#signal}%
- \ifx\m_animation_signal\m_animation_signal_pause
- \appendtocommalist{\number\animation_frame}\m_animation_pause
- \fi
- \edef\animation_currentframe{\animation_name:\number\animation_frame}%
- \appendtocommalist\animation_currentframe\m_animation_symbols
- \definesymbol[\animation_currentframe][{#content}]}
-
-%D To use the module one has to create a new animation environment,
-%D to prevent the user from creating one first before he can use the module
-%D one environment would be always available. The name of this predefined
-%D environment is \tex{startenvironment}, to ensure it can be also by other
-%D modules when a non english interface is used it is ensured you can always
-%D use it with two commands \tex{startanimation} and \tex{stopanimation}.
-
-\defineanimation[\v!animation]
-
-\ifdefined\startanimation \else
- \def\startanimation{\animation_beg\v!animation}%
- \def\stopanimation {\animation_end }%
-\fi
-
-\setupanimation
- [ \c!frame=\v!off,
- \c!offset=\v!overlay,
- \c!menu=\v!overlay,
- \c!distance=\spaceamount,
- \c!framerate=\plusone,
- \c!symbolset=navigation 1]
-
-\protect \endinput