Provided by: libxbae-dev_4.60.4-2_amd64 bug


       XbaeMatrix - The Bellcore Application Environment (BAE) XbaeMatrix widget class.


       #include <Xbae/Matrix.h>


       XbaeMatrix presents an editable array of string data to the user in a scrollable grid-like
       format similar to a spreadsheet.  Non editable  pixmaps  can  also  be  displayed  on  the
       matrix.   The rows and columns of the Matrix may optionally be labeled.  Also, a number of
       fixed leading or trailing rows or columns may be specified - these behave similarly to the
       labels.   While  XbaeMatrix  looks  and  acts  like  a grid of XmText widgets, it actually
       contains only one XmText.  This means that XbaeMatrix widgets with hundreds  or  thousands
       of rows have much less overhead than they would if they used an XmText for each cell.

       Clicking on a cell with Button1 will edit the cell.  While a cell is being edited, Tab and
       Shift-Tab will edit the cell to the right or left respectively.   The  osfUp  and  osfDown
       keys  will edit the cell above or below.  Ctrl-Tab and Shift-Ctrl-Tab will traverse out of
       the Matrix and into the next or previous tab groups.

       The osfCancel key will cancel any edits made to a cell.  The osfActivate key  will  commit
       any  edits  made to a cell and store them in the Matrix.  When traversing from another tab
       group into the Matrix, the focus will go to whichever cell is currently being edited.   If
       no cells are being edited, then the upper left most visible non-fixed cell will be edited.

       The column sizes may be dynamically resized by pressing the Shift-Button2 combination when
       over a column boundary, similar to the behaviour of some popular  spreadsheets.   After  a
       column  has  been  resized  in  this  manner,  the  XbaeMatrix  calls the callbacks on the
       XmNresizeColumnCallback callback list for post processing.

       If the Matrix is resized until it is too small to display all of  the  cells  in  a  given
       dimension,  then it will display a ScrollBar for that dimension.  The horizontal ScrollBar
       will scroll the cells and column labels, but not the row labels, fixed columns or trailing
       fixed  columns.   The vertical ScrollBar will scroll the cells and row labels, but not the
       column labels, fixed rows or trailing fixed rows.

       For  the  application  programmer,  XbaeMatrix  provides  callbacks  to  assist  in   data
       validation.   The callbacks on the XmNmodifyVerifyCallback callback list are called before
       text is inserted into, or deleted from, a cell.  This callback list can be used  to  force
       user   input   to   match  a  certain  pattern  (e.g.  a  date  format).   Similarly,  the
       XmNvalueChangedCallback is called after text is inserted or deleted.

       When a cell is edited (by clicking on it or tabbing  into  it),  the  XmNleaveCellCallback
       callbacks  are  called  for  the  previous cell being edited, if any.  The application can
       verify the data entered in that cell and disallow editing of the new cell if the  data  is
       invalid.   If the data was valid, then the XmNenterCellCallback callbacks for the new cell
       are called.  These callbacks can be used to specify the editability of the new cell.

       The XmNtraverseCellCallback callbacks are also called when the user attempts to edit a new
       cell  and  when the matrix gains or looses focus.  This allows the application to override
       the default traversal behavior of XbaeMatrix.

       The XmNdefaultActionCallback is provided to allow a double  click  action  in  a  cell  to
       perform some function.

       Motif's Drag and Drop functionality can be achieved via the XmNprocessDragCallback.

       For  large  amounts  of  data, the overhead of assigning data to the widget can be avoided
       using the XmNdrawCellCallback.  This callback also  allows  user  defined  pixmaps  to  be
       placed in a certain cell.  When using this callback, data for string fields can be written
       back to the application by using the XmNwriteCellCallback.


       XbaeMatrix inherits behavior and resources  from  the  Core,  Composite,  Constraint,  and
       XmManager widget classes.
       The class pointer is xbaeMatrixWidgetClass.
       The class name is XbaeMatrix.

New Resources

       The  following  table  lists  the  new  resources defined by XbaeMatrix.  The codes in the
       ``Access'' column indicate whether the given resource can be set at creation time (C),  or
       set by using XtSetValues (S), or retrieved by using XtGetValues (G).

       │                                XbaeMatrix Resource Set                                  │
Binary file (standard input) matches