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)