Provided by: ivtools-dev_2.0.11d.a1-3build1_amd64 bug

NAME

       AcknowledgeDialog,  BasicDialog,  ConfirmDialog,  GridDialog,  PrintDialog,  UChooser  - an assortment of
       useful dialog boxes

SYNOPSIS

       #include <Unidraw/dialogs.h>

DESCRIPTION

       BasicDialog  is  the  base  class  for  subclasses  that  implement  simple  but  common  dialog   boxes.
       AcknowledgeDialog  simply displays a one or two line message with a PushButton for dismissing the dialog.
       ConfirmDialog displays one or two lines of  descriptive  text  with  three  pushbuttons  marked  ``Yes,''
       ``No,''  and  ``Cancel'',  all  of which dismiss the dialog. ConfirmDialog also provides an interface for
       retrieving the button pushed.  GridDialog lets the user specify  the  resolution  of  a  cartesian  grid.
       PrintDialog  is  a FileChooser for specifying the name of a file or a printer.  Finally, UChooser extends
       the StringChooser protocol to provide additional useful features, including support for alphabetizing its
       StringBrowser's contents and for embellishing the dialog with descriptive text.

BASICDIALOG PUBLIC OPERATIONS

       void SetTitle(const char*)
       void SetSubtitle(const char*)
              BasicDialogs can display one or two lines of descriptive text.  These functions  change  the  text
              appearing in these lines.  The change appears immediately if the dialog is visible.

BASICDIALOG PROTECTED OPERATIONS

       BasicDialog(
           ButtonState*, const char* title = ``'',
           const char* subtitle = ``'', Alignment = Center
       )

       BasicDialog(
           const char*, ButtonState*, const char* title = ``'',
           const char* subtitle = ``'', Alignment = Center
       )
              Instantiate a BasicDialog, supplying an optional instance name, a button state, title and subtitle
              strings,  and the dialog's alignment, which is used by its Popup operation.  These operations will
              initialize two protected MarginFrame member variables, _title and _subtitle,  which  will  contain
              either  a  Message  instance  with  the specified string or a piece of glue if the string is null.
              These MarginFrames will be composed vertically at the top of the dialog,  and  no  vertical  space
              will be taken up by a null title or subtitle string.

       virtual void Forward(Event&)
       boolean IsAChild(Interactor*)
              These  functions are useful for rejecting spurious events while the dialog is visible, effectively
              locking out the rest of the application.  If Forward's event argument has x and y coordinates that
              fall within the dialog's canvas, then Forward calls Handle on the event's target.   Otherwise  the
              BasicDialog's  Handle  is called.  IsAChild returns true if the given interactor is a child of the
              dialog.

ACKNOWLEDGEDIALOG PUBLIC OPERATIONS

       AcknowledgeDialog(const char* title, const char* subtitle)
              Construct an AcknowledgeDialog instance with the given title and subtitle.

       virtual void Acknowledge()
              Call this function when the application should wait for the user to acknowledge  the  dialog.   It
              returns  when  the user has pressed and released the dialog's push button.  This function does not
              pop up the dialog.

CONFIRMDIALOG PUBLIC OPERATIONS

       ConfirmDialog(const char* title, const char* subtitle)
              Construct a ConfirmDialog instance with the given title and subtitle.

       virtual char Confirm()
              Call this function when the application should wait for  the  user  to  confirm  the  dialog.   It
              returns  'y',  'n',  or  '^G'  ('\007'), depending whether the ``Yes,'' ``No,'' or ``Cancel'' push
              button was pressed, respectively. This function does not pop up the dialog.

GRIDDIALOG PUBLIC OPERATIONS

       GridDialog()
              Construct a GridDialog instance.  The GridDialog contains a MatchEditor  instance  for  specifying
              the  size  of  the  grid's  graduations in the x and y axes.  The user can specify these values in
              pixels, points, centimeters, or inches by clicking on the appropriate radio button.

       virtual void GetValues(float& xincr, float& yincr)
              Return the user-specified values for the size of the grid's graduations, in pixel units.

       void SelectMessage()
              Highlight the values in the dialog's MatchEditor.

PRINTDIALOG PUBLIC OPERATIONS

       PrintDialog(boolean to_printer = true)
              Construct a PrintDialog instance, optionally specifying whether the dialog  should  prompt  for  a
              printer name or a file name.

       void ToPrinter(boolean)
       boolean ToPrinter()
              Specify  and  Return  whether  or  not the string specified in the PrintDialog refers to a printer
              name.

UCHOOSER PUBLIC OPERATIONS

       UChooser(
           const char* title, const char* subtitle,
           const char* acceptLabel, const char* sample
       )
              Construct a UChooser instance.  The title and subtitle parameters specify the descriptive text  at
              the  top  of  the  dialog  box.   This  constructor  initializes  two protected MarginFrame member
              variables _title and _subtitle  that  are  analogous  to  the  corresponding  BasicDialog  members
              described above.

       void Clear()
              Removes all strings from the UChooser's string browser.

       void Include(const char*)
       void Exclude(const char*)
              Include  inserts a string into the string browser at a position defined by the UChooser's Position
              function, described below.  Exclude removes the given string from  the  string  browser.   If  the
              string  browser  contains  more than one copy of the string, then Exclude removes the one with the
              smallest index.

       void SetTitle(const char*)
       void SetSubtitle(const char*)
              These functions change the text appearing in UChooser's title or  subtitle.   The  change  appears
              immediately if the dialog is visible.

UCHOOSER PROTECTED OPERATIONS

       UChooser(ButtonState*, int rows, int cols, Alignment)
              Direct  the  UChooser  to  initialize  itself  with  a  string  browser  of the given size without
              initializing the MarginFrame members.  Subclasses that require a different look-and-feel  can  use
              this  constructor to avoid creating MarginFrames or Messages they don't need.  The Init, Interior,
              and AddScroller functions (described below) factor out different parts of  the  default  look  and
              feel, allowing subclasses to use parts of it.

       void Init(const char* title, const char* subtitle)
              Explicitly initialize the MarginFrame members to display the given title and/or subtitle strings.

       Interactor* Interior(const char* acceptLabel)
              Return an interactor that composes the UChooser's default look and feel.

       Interactor* AddScroller(Interactor*)
              Return  a  composition  containing  the  given interactor with a vertical scroll bar and adjusters
              along its right side, initializing them to scroll the interactor.  The Interior function uses this
              operation to provide the string browser's  scrolling interface.

       virtual int Position(const char*)
              Return an appropriate string browser index for  the  given  string.   By  default,  this  function
              returns  the  index  that  will  place  the string in alphabetical order among those in the string
              browser.

SEE ALSO

       Button(3I),   Dialog(3I),   Event(3I),   FileChooser(3I),   Frame(3I),   MatchEditor(3I),    Message(3I),
       StringBrowser(3I), StringChooser(3I), StringEditor(3I)

Unidraw                                           23 July 1990                                   BasicDialog(3U)