| \section{\module{EasyDialogs} --- |
| Basic Macintosh dialogs} |
| |
| \declaremodule{standard}{EasyDialogs} |
| \platform{Mac} |
| \modulesynopsis{Basic Macintosh dialogs.} |
| |
| |
| The \module{EasyDialogs} module contains some simple dialogs for |
| the Macintosh. All routines have an optional parameter \var{id} with |
| which you can override the DLOG resource used for the dialog, as long |
| as the item numbers correspond. See the source for details. |
| |
| The \module{EasyDialogs} module defines the following functions: |
| |
| |
| \begin{funcdesc}{Message}{str} |
| A modal dialog with the message text \var{str}, which should be at |
| most 255 characters long, is displayed. Control is returned when the |
| user clicks ``OK''. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{AskString}{prompt\optional{, default}} |
| Ask the user to input a string value, in a modal dialog. \var{prompt} |
| is the promt message, the optional \var{default} arg is the initial |
| value for the string. All strings can be at most 255 bytes |
| long. \function{AskString()} returns the string entered or \code{None} |
| in case the user cancelled. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{AskYesNoCancel}{question\optional{, default}} |
| Present a dialog with text \var{question} and three buttons labelled |
| ``yes'', ``no'' and ``cancel''. Return \code{1} for yes, \code{0} for |
| no and \code{-1} for cancel. The default return value chosen by |
| hitting return is \code{0}. This can be changed with the optional |
| \var{default} argument. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{ProgressBar}{\optional{label\optional{, maxval}}} |
| Display a modeless progress dialog with a thermometer bar. \var{label} |
| is the text string displayed (default ``Working...''), \var{maxval} is |
| the value at which progress is complete (default \code{100}). The |
| returned object has one method, \code{set(\var{value})}, which sets |
| the value of the progress bar. The bar remains visible until the |
| object returned is discarded. |
| |
| The progress bar has a ``cancel'' button, but it is currently |
| non-functional. |
| \end{funcdesc} |
| |
| Note that \module{EasyDialogs} does not currently use the notification |
| manager. This means that displaying dialogs while the program is in |
| the background will lead to unexpected results and possibly |
| crashes. Also, all dialogs are modeless and hence expect to be at the |
| top of the stacking order. This is true when the dialogs are created, |
| but windows that pop-up later (like a console window) may also result |
| in crashes. |