The EasyDialogs module contains some simple dialogs for
the Macintosh, modelled after the stdwin dialogs with similar
names. All routines have an optional parameter 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 EasyDialogs module defines the following functions:
- Message (str)
-
A modal dialog with the message text str, which should be at
most 255 characters long, is displayed. Control is returned when the
user clicks ``OK''.
- AskString (prompt[, default])
-
Ask the user to input a string value, in a modal dialog. prompt
is the promt message, the optional default arg is the initial
value for the string. All strings can be at most 255 bytes
long. AskString() returns the string entered or None
in case the user cancelled.
- AskYesNoCancel (question[, default])
-
Present a dialog with text question and three buttons labelled
``yes'', ``no'' and ``cancel''. Return 1 for yes, 0 for
no and -1 for cancel. The default return value chosen by
hitting return is 0. This can be changed with the optional
default argument.
- ProgressBar ([label[, maxval]])
-
Display a modeless progress dialog with a thermometer bar. label
is the text string displayed (default ``Working...''), maxval is
the value at which progress is complete (default 100). The
returned object has one method, set(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.
Note that 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.