1%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2%% Name: animatctrl.tex 3%% Purpose: wxAnimationCtrl documentation 4%% Author: Francesco Montorsi 5%% Created: 24-9-2006 6%% RCS-ID: $Id: animatctrl.tex 48887 2007-09-21 17:53:07Z JS $ 7%% Copyright: (c) 2006 Francesco Montorsi 8%% License: wxWindows license 9%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 10 11\section{\class{wxAnimationCtrl}}\label{wxanimationctrl} 12 13This is a static control which displays an animation. 14wxAnimationCtrl API is simple as possible and won't give you full control on the 15animation; if you need it then use \helpref{wxMediaCtrl}{wxmediactrl}. 16 17This control is useful to display a (small) animation while doing a long task 18(e.g. a "throbber"). 19 20It is only available if \texttt{wxUSE\_ANIMATIONCTRL} is set to $1$ (the default). 21 22\wxheading{Derived from} 23 24\helpref{wxControl}{wxcontrol}\\ 25\helpref{wxWindow}{wxwindow}\\ 26\helpref{wxEvtHandler}{wxevthandler}\\ 27\helpref{wxObject}{wxobject} 28 29\wxheading{Include files} 30 31<wx/animate.h> 32 33\wxheading{Window styles} 34 35\twocolwidtha{5cm}% 36\begin{twocollist}\itemsep=0pt 37\twocolitem{\windowstyle{wxAC\_DEFAULT\_STYLE}}{The default style: wxNO\_BORDER.} 38\twocolitem{\windowstyle{wxAC\_NO\_AUTORESIZE}}{By default, the control will adjust 39its size to exactly fit to the size of the animation when \helpref{SetAnimation}{wxanimationctrlsetanimation} 40is called. If this style flag is given, the control will not change its size} 41\end{twocollist} 42 43%\wxheading{Event handling} 44% 45%\twocolwidtha{7cm}% 46%\begin{twocollist}\itemsep=0pt 47%\twocolitem{{\bf EVT\_ANIMATION\_END(id, func)}}{} 48%\end{twocollist} 49 50\wxheading{See also} 51 52\helpref{wxAnimation}{wxanimation} 53 54 55\latexignore{\rtfignore{\wxheading{Members}}} 56 57\membersection{wxAnimationCtrl::wxAnimationCtrl}\label{wxanimationctrlctor} 58 59\func{}{wxAnimationCtrl}{\param{wxWindow *}{parent},\rtfsp 60\param{wxWindowID}{ id},\rtfsp 61\param{const wxAnimation\& }{anim},\rtfsp 62\param{const wxPoint\& }{pos = wxDefaultPosition},\rtfsp 63\param{const wxSize\& }{size = wxDefaultSize},\rtfsp 64\param{long}{ style = wxAC\_DEFAULT\_STYLE},\rtfsp 65\param{const wxString\& }{name = ``animationctrl"}} 66 67Initializes the object and calls \helpref{Create}{wxanimationctrlcreate} with 68all the parameters. 69 70 71\membersection{wxAnimationCtrl::Create}\label{wxanimationctrlcreate} 72 73\func{bool}{Create}{\param{wxWindow *}{parent},\rtfsp 74\param{wxWindowID}{ id},\rtfsp 75\param{const wxAnimation\& }{anim},\rtfsp 76\param{const wxPoint\& }{pos = wxDefaultPosition},\rtfsp 77\param{const wxSize\& }{size = wxDefaultSize},\rtfsp 78\param{long}{ style = wxAC\_DEFAULT\_STYLE},\rtfsp 79\param{const wxString\& }{name = ``animationctrl"}} 80 81\wxheading{Parameters} 82 83\docparam{parent}{Parent window, must be non-\NULL.} 84 85\docparam{id}{The identifier for the control.} 86 87\docparam{anim}{The initial animation shown in the control.} 88 89\docparam{pos}{Initial position.} 90 91\docparam{size}{Initial size.} 92 93\docparam{style}{The window style, see {\tt wxAC\_*} flags.} 94 95\docparam{name}{Control name.} 96 97After control creation you must explicitely call \helpref{Play}{wxanimationctrlplay} 98to start to play the animation. Until that function won't be called, the first frame 99of the animation is displayed. 100 101\wxheading{Return value} 102 103\true if the control was successfully created or \false if creation failed. 104 105 106\membersection{wxAnimationCtrl::GetAnimation}\label{wxanimationctrlgetanimation} 107 108\constfunc{wxAnimation}{GetAnimation}{\void} 109 110Returns the animation associated with this control. 111 112 113\membersection{wxAnimationCtrl::GetInactiveBitmap}\label{wxanimationctrlgetinactivebitmap} 114 115\constfunc{wxBitmap}{GetInactiveBitmap}{\void} 116 117Returns the inactive bitmap shown in this control when the; 118see \helpref{SetInactiveBitmap}{wxanimationctrlsetinactivebitmap} for more info. 119 120 121\membersection{wxAnimationCtrl::IsPlaying}\label{wxanimationctrlisplaying} 122 123\constfunc{bool}{IsPlaying}{\void} 124 125Returns \true if the animation is being played. 126 127 128\membersection{wxAnimationCtrl::LoadFile}\label{wxanimationctrlloadfile} 129 130\func{bool}{LoadFile}{\param{const wxString \&}{ file}, \param{wxAnimationType }{ animType = wxANIMATION\_TYPE\_ANY}} 131 132Loads the animation from the given file and calls \helpref{SetAnimation}{wxanimationctrlsetanimation}. 133See \helpref{wxAnimation::LoadFile}{wxanimationloadfile} for more info. 134 135 136\membersection{wxAnimationCtrl::Play}\label{wxanimationctrlplay} 137 138\func{bool}{Play}{\void} 139 140Starts playing the animation. 141The animation is always played in loop mode (unless the last frame of the animation 142has an infinite delay time) and always start from the first frame 143(even if you \helpref{stopped}{wxanimationctrlstop} it while some other frame was 144displayed). 145 146 147\membersection{wxAnimationCtrl::SetAnimation}\label{wxanimationctrlsetanimation} 148 149\func{void}{SetAnimation}{\param{const wxAnimation \&}{ anim}} 150 151Sets the animation to play in this control. 152If the previous animation is being played, it's \helpref{Stopped}{wxanimationctrlstop}. 153 154Until \helpref{Play}{wxanimationctrlplay} isn't called, a static image, the first 155frame of the given animation or the background colour will be shown 156(see \helpref{SetInactiveBitmap}{wxanimationctrlsetinactivebitmap} for more info). 157 158 159\membersection{wxAnimationCtrl::SetInactiveBitmap}\label{wxanimationctrlsetinactivebitmap} 160 161\func{void}{SetInactiveBitmap}{\param{const wxBitmap\& }{bmp}} 162 163Sets the bitmap to show on the control when it's not playing an animation. 164If you set as inactive bitmap {\tt wxNullBitmap} (which is the default), then the 165first frame of the animation is instead shown when the control is inactive; in this case, 166if there's no valid animation associated with the control (see \helpref{SetAnimation}{wxanimationctrlsetanimation}), 167then the background colour of the window is shown. 168 169If the control is not playing the animation, the given bitmap will be immediately 170shown, otherwise it will be shown as soon as \helpref{Stop}{wxanimationctrlstop} 171is called. 172 173Note that the inactive bitmap, if smaller than the control's size, will be centered in 174the control; if bigger, it will be stretched to fit it. 175 176 177\membersection{wxAnimationCtrl::Stop}\label{wxanimationctrlstop} 178 179\func{void}{Stop}{\void} 180 181Stops playing the animation. 182The control will show the first frame of the animation, a custom static image or 183the window's background colour as specified by the 184last \helpref{SetInactiveBitmap}{wxanimationctrlsetinactivebitmap} call. 185 186