  
  [1X6 [33X[0;0YExamples of Applications based on [10XNCurses.BrowseGeneric[110X[101X[1X[133X[101X
  
  [33X[0;0YThis  chapter  introduces  the  operation  [2XBrowse[102X  ([14X6.1-1[114X) and lists several
  examples  how the function [2XNCurses.BrowseGeneric[102X ([14X4.3-1[114X) can be utilized for
  rendering  [5XGAP[105X related data or for playing games. Each section describes the
  relevant  [5XGAP[105X  functions  and  briefly sketches the technical aspects of the
  implementation;  more  details  can  be  found  in the [5XGAP[105X files, in the [11Xapp[111X
  directory of the package.[133X
  
  [33X[0;0YOnly  Section  [14X6.4[114X  describes  a  standard  application  in the sense of the
  introduction  to  Chapter  [14X4[114X,  perhaps except for a special function that is
  needed  to compare table entries. The other examples in this chapter require
  some of the programming described in Chapter [14X5[114X.[133X
  
  [33X[0;0YThe   [5XGAP[105X   examples   in   this   chapter   use   the   [21Xreplay[121X  feature  of
  [2XNCurses.BrowseGeneric[102X   ([14X4.3-1[114X),  see  Section  [14X4.1[114X.  This  means  that  the
  [2XNCurses.BrowseGeneric[102X  ([14X4.3-1[114X) based function is called between two calls of
  [2XBrowseData.SetReplay[102X  ([14X5.4-2[114X).  If you want to paste these examples into the
  [5XGAP[105X  session with the mouse then do not paste the final [2XBrowseData.SetReplay[102X
  ([14X5.4-2[114X)   call,   since   [2XNCurses.BrowseGeneric[102X  ([14X4.3-1[114X)  would  regard  the
  additional input as a user interrupt.[133X
  
  
  [1X6.1 [33X[0;0YThe Operation [10XBrowse[110X[101X[1X[133X[101X
  
  [1X6.1-1 Browse[101X
  
  [33X[1;0Y[29X[2XBrowse[102X( [3Xobj[103X[, [3Xarec[103X] ) [32X operation[133X
  
  [33X[0;0YThis operation displays the [5XGAP[105X object [3Xobj[103X in a nice, formatted way, similar
  to the operation [2XDisplay[102X ([14XReference: Display[114X). The difference is that [2XBrowse[102X
  is intended to use [10Xncurses[110X facilities.[133X
  
  [33X[0;0YCurrently there are methods for matrices (see [2XBrowse[102X ([14X6.2-2[114X)), for character
  tables (see [2XBrowse[102X ([14X6.3-1[114X)) and for tables of marks (see [2XBrowse[102X ([14X6.4-1[114X)).[133X
  
  
  [1X6.2 [33X[0;0YMatrix Display[133X[101X
  
  [33X[0;0YThe  [5XGAP[105X  library  provides several [2XDisplay[102X ([14XReference: Display[114X) methods for
  matrices.  In  order  to  cover  the  functionality of these methods, [5XBrowse[105X
  provides the function [2XNCurses.BrowseDenseList[102X ([14X6.2-1[114X) that uses the standard
  facilities  of  the  function  [2XNCurses.BrowseGeneric[102X ([14X4.3-1[114X), i. e., one can
  scroll in the matrix, searching and sorting are provided etc.[133X
  
  [33X[0;0YThe  idea  is to customize this function for different special cases, and to
  install  corresponding  [2XBrowse[102X  ([14X6.1-1[114X)  methods.  Examples  are methods for
  matrices  over  finite  fields  and  residue  class  rings  of  the rational
  integers, see [2XBrowse[102X ([14X6.2-2[114X).[133X
  
  [33X[0;0YThe code can be found in the file [11Xapp/matdisp.g[111X of the package.[133X
  
  [1X6.2-1 NCurses.BrowseDenseList[101X
  
  [33X[1;0Y[29X[2XNCurses.BrowseDenseList[102X( [3Xlist[103X, [3Xarec[103X ) [32X function[133X
  [6XReturns:[106X  [33X[0;10Ynothing.[133X
  
  [33X[0;0YLet  [3Xlist[103X be a dense list whose entries are lists, for example a matrix, and
  let  [3Xarec[103X  be  a  record.  This  function  displays  [3Xlist[103X  in a window, as a
  two-dimensional  array  with  row  and  column  positions  as row and column
  labels, respectively.[133X
  
  [33X[0;0YThe following components of [3Xarec[103X are supported.[133X
  
  [8X[10Xheader[110X[8X[108X
        [33X[0;6YIf bound, the value must be a valid value of the [10Xwork.header[110X component
        of  a browse table, see [2XBrowseData.IsBrowseTable[102X ([14X4.2-3[114X); for example,
        the  value  can  be  a list of strings. If this component is not bound
        then the browse table has no header.[133X
  
  [8X[10Xfooter[110X[8X[108X
        [33X[0;6YIf bound, the value must be a valid value of the [10Xwork.footer[110X component
        of  a browse table, see [2XBrowseData.IsBrowseTable[102X ([14X4.2-3[114X); for example,
        the  value  can  be  a list of strings. If this component is not bound
        then the browse table has no footer.[133X
  
  [8X[10XconvertEntry[110X[8X[108X
        [33X[0;6YIf  bound,  the  value  must be a unary function that returns a string
        describing   its   argument.  The  default  is  the  operation  [2XString[102X
        ([14XReference:      String[114X).      Another      possible      value     is
        [10XNCurses.ReplaceZeroByDot[110X, which returns the string [10X"."[110X if the argument
        is  a  zero  element  in  the sense of [2XIsZero[102X ([14XReference: IsZero[114X), and
        returns the [2XString[102X ([14XReference: String[114X) value otherwise. For each entry
        in a row of [3Xlist[103X, the [10XconvertEntry[110X value is shown in the browse table.[133X
  
  [8X[10XlabelsRow[110X[8X[108X
        [33X[0;6YIf  bound,  the  value  must  be a list of row label rows for [3Xlist[103X, as
        described  in Section [2XBrowseData.IsBrowseTable[102X ([14X4.2-3[114X). The default is
        [10X[ [ "1" ], [ "2" ], ... ][110X.[133X
  
  [8X[10XlabelsCol[110X[8X[108X
        [33X[0;6YIf  bound,  the value must be a list of column label rows for [3Xlist[103X, as
        described  in Section [2XBrowseData.IsBrowseTable[102X ([14X4.2-3[114X). The default is
        [10X[ [ "1", "2", ... ] ][110X.[133X
  
  [33X[0;0YThe  full  functionality  of  the  function [2XNCurses.BrowseGeneric[102X ([14X4.3-1[114X) is
  available.[133X
  
  [1X6.2-2 Browse[101X
  
  [33X[1;0Y[29X[2XBrowse[102X( [3Xlist[103X ) [32X method[133X
  [6XReturns:[106X  [33X[0;10Ynothing.[133X
  
  [33X[0;0YSeveral  methods for the operation [2XBrowse[102X ([14X6.1-1[114X) are installed for the case
  that  the  argument is a list of lists. These methods cover a default method
  for lists of lists and the [2XDisplay[102X ([14XReference: Display[114X) methods for matrices
  over  finite  fields  and residue class rings of the rational integers. Note
  that  matrices  over  finite prime fields, small extension fields, and large
  extension  fields  are  displayed  differently,  and  the same holds for the
  corresponding [2XBrowse[102X ([14X6.1-1[114X) methods.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27Xn:= [ 14, 14, 14, 14 ];;[127X[104X
    [4X[25Xgap>[125X [27Xinput:= Concatenation( n, n, n, "Q" );;  # ``do nothing and quit''[127X[104X
    [4X[25Xgap>[125X [27XBrowseData.SetReplay( input );[127X[104X
    [4X[25Xgap>[125X [27XBrowse( RandomMat( 10, 10, Integers ) );[127X[104X
    [4X[25Xgap>[125X [27XBrowseData.SetReplay( input );[127X[104X
    [4X[25Xgap>[125X [27XBrowse( RandomMat( 10, 10, GF(3) ) );[127X[104X
    [4X[25Xgap>[125X [27XBrowseData.SetReplay( input );[127X[104X
    [4X[25Xgap>[125X [27XBrowse( RandomMat( 10, 10, GF(4) ) );[127X[104X
    [4X[25Xgap>[125X [27XBrowseData.SetReplay( input );[127X[104X
    [4X[25Xgap>[125X [27XBrowse( RandomMat( 10, 10, Integers mod 6 ) );[127X[104X
    [4X[25Xgap>[125X [27XBrowseData.SetReplay( input );[127X[104X
    [4X[25Xgap>[125X [27XBrowse( RandomMat( 10, 10, GF( NextPrimeInt( 2^16 ) ) ) );[127X[104X
    [4X[25Xgap>[125X [27XBrowseData.SetReplay( input );[127X[104X
    [4X[25Xgap>[125X [27XBrowse( RandomMat( 10, 10, GF( 2^20 ) ) );[127X[104X
    [4X[25Xgap>[125X [27XBrowseData.SetReplay( false );[127X[104X
  [4X[32X[104X
  
  
  [1X6.3 [33X[0;0YCharacter Table Display[133X[101X
  
  [33X[0;0YThe [5XGAP[105X library provides a [2XDisplay[102X ([14XReference: Display[114X) method for character
  tables  that  breaks  the  table  into columns fitting on the screen. [5XBrowse[105X
  provides  an  alternative,  using  the  standard  facilities of the function
  [2XNCurses.BrowseGeneric[102X  ([14X4.3-1[114X),  i. e.,  one  can  scroll  in  the matrix of
  character values, searching and sorting are provided etc.[133X
  
  [33X[0;0YThe  [2XBrowse[102X  ([14X6.1-1[114X)  method  for  character tables can be called instead of
  [2XDisplay[102X  ([14XReference:  Display[114X).  For  convenience, one can additionally make
  this  function the default [2XDisplay[102X ([14XReference: Display[114X) method for character
  tables,  by  assigning  it  to  the  [10XDisplay[110X  component in the global record
  [10XCharacterTableDisplayDefaults.User[110X,   see [14X'Reference:   Printing   Character
  Tables'[114X;  for  example, one can do this in one's [11Xgaprc[111X file, see [14X'Reference:
  The gap.ini and gaprc files'[114X. (This can be undone by unbinding the component
  [10XCharacterTableDisplayDefaults.User.Display[110X.)[133X
  
  [33X[0;0YThe  function  [2XBrowseDecompositionMatrix[102X  ([14X6.3-2[114X)  can  be  used  to display
  decomposition matrices for Brauer character tables.[133X
  
  [1X6.3-1 Browse[101X
  
  [33X[1;0Y[29X[2XBrowse[102X( [3Xtbl[103X[, [3Xoptions[103X] ) [32X method[133X
  
  [33X[0;0YThis  method  displays  the  character  table  [3Xtbl[103X in a window. The optional
  record  [3Xoptions[103X  describes what shall be displayed, the supported components
  and  the  default  values  are  described  in [14X'Reference: Printing Character
  Tables'[114X.[133X
  
  [33X[0;0YThe  full  functionality  of  the  function [2XNCurses.BrowseGeneric[102X ([14X4.3-1[114X) is
  available.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27Xif TestPackageAvailability( "CTblLib" ) = true then[127X[104X
    [4X[25X>[125X [27X     BrowseData.SetReplay( Concatenation([127X[104X
    [4X[25X>[125X [27X        # scroll in the table[127X[104X
    [4X[25X>[125X [27X        "DRULdddddrrrrrlluu",[127X[104X
    [4X[25X>[125X [27X        # select an entry and move it around[127X[104X
    [4X[25X>[125X [27X        "seddrruuuddlll",[127X[104X
    [4X[25X>[125X [27X        # search for the pattern 135 (six times)[127X[104X
    [4X[25X>[125X [27X        "/135", [ NCurses.keys.ENTER ], "nnnnn",[127X[104X
    [4X[25X>[125X [27X        # deselect the entry, select the first column[127X[104X
    [4X[25X>[125X [27X        "qLsc",[127X[104X
    [4X[25X>[125X [27X        # sort and categorize by this column[127X[104X
    [4X[25X>[125X [27X        "sc",[127X[104X
    [4X[25X>[125X [27X        # select the first row, move down the selection[127X[104X
    [4X[25X>[125X [27X        "srdddd",[127X[104X
    [4X[25X>[125X [27X        # expand the selected category, scroll the selection down[127X[104X
    [4X[25X>[125X [27X        "xd",[127X[104X
    [4X[25X>[125X [27X        # and quit the application[127X[104X
    [4X[25X>[125X [27X        "Q" ) );[127X[104X
    [4X[25X>[125X [27X     Browse( CharacterTable( "HN" ) );[127X[104X
    [4X[25X>[125X [27X     BrowseData.SetReplay( false );[127X[104X
    [4X[25X>[125X [27Xfi;[127X[104X
  [4X[32X[104X
  
  [33X[0;0Y[13XImplementation  remarks[113X:  The  first  part of the code in the [2XBrowse[102X ([14X6.1-1[114X)
  method for character tables is almost identical with the code for extracting
  the  data  to  be  displayed from the input data in the [5XGAP[105X library function
  [10XCharacterTableDisplayDefault[110X.  The  second part of the code transforms these
  data  into  a  browse  table.  Character names and (if applicable) indicator
  values are used as row labels, and centralizer orders, power maps, and class
  names  are used as column labels. The identifier of the table is used as the
  static  header.  When an irrational entry is selected, a description of this
  entry is shown in the dynamic footer.[133X
  
  [33X[0;0YThe  standard  modes  in [2XBrowseData[102X ([14X5.4-1[114X) (except the [10Xhelp[110X mode) have been
  extended  by  three new actions. The first two of them open pagers giving an
  overview   of   all   irrationalities   in   the  table,  or  of  all  those
  irrationalities  that  have  been  shown  on the screen in the current call,
  respectively.  The  corresponding  user inputs are the [12XI[112X and the [12Xi[112X key. (The
  names assigned to the irrationalities are generated column-wise. If one just
  scrolls  through  the table, without jumping, then these names coincide with
  the  names  generated by the default [2XDisplay[102X ([14XReference: Display[114X) method for
  character  tables;  this  is  in  general  [13Xnot[113X  the case, for example when a
  row-wise  search  in the table is performed.) The third new action, which is
  associated with the [12Xp[112X key, toggles the visibility status of the column label
  rows for centralizer orders and power maps.[133X
  
  [33X[0;0YAn  individual  [10Xminyx[110X function does not only check whether the desired table
  fits  into  the  window but also whether a table with too high column labels
  (centralizer  orders and power maps) would fit if these labels get collapsed
  via the [12Xp[112X key. In this case, the labels are automatically collapsed, and the
  [12Xp[112X key is disabled.[133X
  
  [33X[0;0YIn  order  to keep the required space small also for large character tables,
  caching  of  formatted  matrix  entries  is  disabled, and the strings to be
  displayed  are computed on demand with a [10XMain[110X function in the [10Xwork[110X component
  of  the  browse  table. For the same reason, the constant height one for all
  table  rows  is set in advance, so one need not inspect a whole character if
  only a few values of it shall be shown.[133X
  
  [33X[0;0YSpecial  functions  are  provided  for sorting (concerning the comparison of
  character values, which can be integers or irrationalities) and categorizing
  the table by a column (the value in the category row involves the class name
  of the column in question).[133X
  
  [33X[0;0YThe code can be found in the file [11Xapp/ctbldisp.g[111X of the package.[133X
  
  [1X6.3-2 BrowseDecompositionMatrix[101X
  
  [33X[1;0Y[29X[2XBrowseDecompositionMatrix[102X( [3Xmodtbl[103X[, [3Xb[103X][, [3Xoptions[103X] ) [32X function[133X
  
  [33X[0;0YThis  method  displays  the  decomposition matrix of (the [3Xb[103X-th block of) the
  Brauer character table [3Xmodtbl[103X in a window. The arguments are the same as for
  [2XLaTeXStringDecompositionMatrix[102X ([14XReference: LaTeXStringDecompositionMatrix[114X).[133X
  
  [33X[0;0YThe  positions  of the ordinary and modular irreducible characters are shown
  in  the  labels  of  the rows and columns, respectively, that are indexed by
  these characters. When an entry in the decomposition matrix is selected then
  information  about  the  degrees  of  these characters is shown in the table
  footer.[133X
  
  [33X[0;0YThe  full  functionality  of  the  function [2XNCurses.BrowseGeneric[102X ([14X4.3-1[114X) is
  available.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XBrowseData.SetReplay( Concatenation([127X[104X
    [4X[25X>[125X [27X        # select the first entry[127X[104X
    [4X[25X>[125X [27X        "se",[127X[104X
    [4X[25X>[125X [27X        # scroll in the table[127X[104X
    [4X[25X>[125X [27X        "drrrr",[127X[104X
    [4X[25X>[125X [27X        # keep the table open for a while[127X[104X
    [4X[25X>[125X [27X        [ 14, 14, 14, 14, 14 ],[127X[104X
    [4X[25X>[125X [27X        # and quit the application[127X[104X
    [4X[25X>[125X [27X        "Q" ) );[127X[104X
    [4X[25Xgap>[125X [27XBrowseDecompositionMatrix( CharacterTable( "J1" ) mod 2 );[127X[104X
    [4X[25Xgap>[125X [27XBrowseData.SetReplay( false );[127X[104X
  [4X[32X[104X
  
  [33X[0;0YThe code can be found in the file [11Xapp/ctbldisp.g[111X of the package.[133X
  
  
  [1X6.4 [33X[0;0YTable of Marks Display[133X[101X
  
  [33X[0;0YThe [5XGAP[105X library provides a [2XDisplay[102X ([14XReference: Display[114X) method for tables of
  marks  that  breaks the table into columns fitting on the screen. Similar to
  the  situation  with  character  tables,  see  Section [14X6.3[114X,  but with a much
  simpler implementation, [5XBrowse[105X provides an alternative based on the function
  [2XNCurses.BrowseGeneric[102X ([14X4.3-1[114X).[133X
  
  [33X[0;0Y[2XBrowse[102X  ([14X6.1-1[114X)  can  be  called instead of [2XDisplay[102X ([14XReference: Display[114X) for
  tables of marks, cf. [14X'Reference: Printing Tables of Marks'[114X.[133X
  
  [1X6.4-1 Browse[101X
  
  [33X[1;0Y[29X[2XBrowse[102X( [3Xtom[103X[, [3Xoptions[103X] ) [32X method[133X
  
  [33X[0;0YThis method displays the table of marks [3Xtom[103X in a window. The optional record
  [3Xoptions[103X  describes what shall be displayed, the supported components and the
  default values are described in [14X'Reference: Printing Tables of Marks'[114X.[133X
  
  [33X[0;0YThe  full  functionality  of  the  function [2XNCurses.BrowseGeneric[102X ([14X4.3-1[114X) is
  available.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27Xif TestPackageAvailability( "TomLib" ) = true then[127X[104X
    [4X[25X>[125X [27X     BrowseData.SetReplay( Concatenation([127X[104X
    [4X[25X>[125X [27X        # scroll in the table[127X[104X
    [4X[25X>[125X [27X        "DDRRR",[127X[104X
    [4X[25X>[125X [27X        # search for the (exact) value 100 (three times)[127X[104X
    [4X[25X>[125X [27X        "/100",[127X[104X
    [4X[25X>[125X [27X        [ NCurses.keys.DOWN, NCurses.keys.DOWN, NCurses.keys.RIGHT ],[127X[104X
    [4X[25X>[125X [27X        [ NCurses.keys.DOWN, NCurses.keys.DOWN, NCurses.keys.DOWN ],[127X[104X
    [4X[25X>[125X [27X        [ NCurses.keys.RIGHT, NCurses.keys.ENTER ], "nn",[127X[104X
    [4X[25X>[125X [27X        # no more occurrences of 100, confirm[127X[104X
    [4X[25X>[125X [27X        [ NCurses.keys.ENTER ],[127X[104X
    [4X[25X>[125X [27X        # and quit the application[127X[104X
    [4X[25X>[125X [27X        "Q" ) );[127X[104X
    [4X[25X>[125X [27X     Browse( TableOfMarks( "A10" ) );[127X[104X
    [4X[25X>[125X [27X     BrowseData.SetReplay( false );[127X[104X
    [4X[25X>[125X [27X   fi;[127X[104X
  [4X[32X[104X
  
  [33X[0;0Y[13XImplementation remarks[113X: Rows and columns are indexed by their positions. The
  identifier of the table is used as the static header, there is no footer.[133X
  
  [33X[0;0YIn  order  to  keep the required space small also for large tables of marks,
  caching  of  formatted  matrix  entries  is  disabled, and the strings to be
  displayed  are computed on demand with a [10XMain[110X function in the [10Xwork[110X component
  of  the  browse  table. For the same reason, the constant height one for the
  table  rows is set in advance. (For example, the table of marks of the group
  with  identifier  [10X"O8+(2)"[110X,  with  [22X11171[122X rows and columns, can be shown with
  [2XBrowse[102X ([14X6.1-1[114X) in a [5XGAP[105X session requiring about [22X100[122X MB.)[133X
  
  [33X[0;0YThe code can be found in the file [11Xapp/tomdisp.g[111X of the package.[133X
  
  
  [1X6.5 [33X[0;0YTable of Contents of [5XAtlasRep[105X[101X[1X[133X[101X
  
  [33X[0;0YThe  [5XGAP[105X  package  [5XAtlasRep[105X  (see [WPN+19]) is an interface to a database of
  representations and related data. The table of contents of this database can
  be  displayed via the function [2XDisplayAtlasInfo[102X ([14XAtlasRep: DisplayAtlasInfo[114X)
  of  this  package.  The  [5XBrowse[105X package provides an alternative based on the
  function  [2XNCurses.BrowseGeneric[102X  ([14X4.3-1[114X);  one can scroll, search, and fetch
  data for later use.[133X
  
  
  [1X6.5-1 [33X[0;0YBrowseAtlasInfo[133X[101X
  
  [33X[1;0Y[29X[2XBrowseAtlasInfo[102X( [[3Xlistofnames[103X][,] [[3X"contents"[103X, [3Xsources[103X][,] [[3X...[103X] ) [32X function[133X
  [33X[1;0Y[29X[2XBrowseAtlasInfo[102X( [3Xgapname[103X[, [3Xstd[103X][, [3X...[103X] ) [32X function[133X
  [6XReturns:[106X  [33X[0;10Ythe list of [21Xclicked[121X info records.[133X
  
  [33X[0;0YThis  function  shows the information available via the [5XGAP[105X package [5XAtlasRep[105X
  in  a  browse  table, cf. Section [14X'AtlasRep: Accessing Data via AtlasRep'[114X in
  the [5XAtlasRep[105X manual.[133X
  
  [33X[0;0YThe  optional  arguments  can  be used to restrict the table to core data or
  data  extensions,  or  to  show  an  overview  for one particular group. The
  arguments are the same as for [2XDisplayAtlasInfo[102X ([14XAtlasRep: DisplayAtlasInfo[114X),
  see  the  documentation  of this function for details. (Note that additional
  conditions  such as [2XIsPermGroup[102X ([14XReference: IsPermGroup[114X) can be entered also
  in  the  case  that  no  [3Xgapname[103X is given. In this situation, the additional
  conditions  are  evaluated  for  the  [21Xsecond level tables[121X that are opened by
  [21Xclicking[121X on a table row or entry.)[133X
  
  [33X[0;0YWhen one [21Xclicks[121X on one of the table rows or entries then a browse table with
  an  overview  of  the  information  available  for  this group is shown, and
  [21Xclicking[121X  on  one  of  the  rows in these tables adds the corresponding info
  record (see [2XOneAtlasGeneratingSetInfo[102X ([14XAtlasRep: OneAtlasGeneratingSetInfo[114X))
  to the list of return values of [2XBrowseAtlasInfo[102X.[133X
  
  [33X[0;0YThe  full  functionality  of  the  function [2XNCurses.BrowseGeneric[102X ([14X4.3-1[114X) is
  available.[133X
  
  [33X[0;0YThe  following  example  shows how [2XBrowseAtlasInfo[102X can be used to fetch info
  records  about permutation representations of the alternating groups [22XA_5[122X and
  [22XA_6[122X:  We search for the group name [10X"A5"[110X in the overview table, and the first
  cell in the table row for [22XA_5[122X becomes selected; hitting the [12XEnter[112X key causes
  a  new  window to be opened, with an overview of the data available for [22XA_5[122X;
  moving  down  two  rows  and  hitting  the [12XEnter[112X key again causes the second
  representation  to  be added to the result list; hitting [12XQ[112X closes the second
  window,  and  we  are back in the overview table; we move the selection down
  twice  (to  the  row for the group [22XA_6[122X), and choose the first representation
  for this group; finally we leave the table, and the return value is the list
  with the data for the two representations.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27Xd:= [ NCurses.keys.DOWN ];;  r:= [ NCurses.keys.RIGHT ];;[127X[104X
    [4X[25Xgap>[125X [27Xc:= [ NCurses.keys.ENTER ];;[127X[104X
    [4X[25Xgap>[125X [27XBrowseData.SetReplay( Concatenation([127X[104X
    [4X[25X>[125X [27X       "/A5",         # Find the string A5 ...[127X[104X
    [4X[25X>[125X [27X       d, d, r,       # ... such that just the word matches,[127X[104X
    [4X[25X>[125X [27X       c,             # start the search,[127X[104X
    [4X[25X>[125X [27X       c,             # click the table entry A5,[127X[104X
    [4X[25X>[125X [27X       d, d,          # move down two rows,[127X[104X
    [4X[25X>[125X [27X       c,             # click the row for this representation,[127X[104X
    [4X[25X>[125X [27X       "Q",           # quit the second level table,[127X[104X
    [4X[25X>[125X [27X       d, d,          # move down two rows,[127X[104X
    [4X[25X>[125X [27X       c,             # click the table entry A6,[127X[104X
    [4X[25X>[125X [27X       d,             # move down one row,[127X[104X
    [4X[25X>[125X [27X       c,             # click the first row,[127X[104X
    [4X[25X>[125X [27X       "Q",           # quit the second level table,[127X[104X
    [4X[25X>[125X [27X       "Q" ) );       # and quit the application.[127X[104X
    [4X[25Xgap>[125X [27Xif IsBound( BrowseAtlasInfo ) and IsBound( AtlasProgramInfo ) then[127X[104X
    [4X[25X>[125X [27X     SetUserPreference( "AtlasRep", "AtlasRepMarkNonCoreData", "" );[127X[104X
    [4X[25X>[125X [27X     tworeps:= BrowseAtlasInfo();[127X[104X
    [4X[25X>[125X [27X   else[127X[104X
    [4X[25X>[125X [27X     tworeps:= [ fail ];[127X[104X
    [4X[25X>[125X [27X   fi;[127X[104X
    [4X[25Xgap>[125X [27XBrowseData.SetReplay( false );[127X[104X
    [4X[25Xgap>[125X [27Xif fail in tworeps then[127X[104X
    [4X[25X>[125X [27X     Print( "no access to the Web ATLAS\n" );[127X[104X
    [4X[25X>[125X [27X   else[127X[104X
    [4X[25X>[125X [27X     Print( List( tworeps, x -> x.identifier[1] ), "\n" );[127X[104X
    [4X[25X>[125X [27X   fi;[127X[104X
    [4X[28X[ "A5", "A6" ][128X[104X
  [4X[32X[104X
  
  [33X[0;0Y[13XImplementation remarks[113X: The first browse table shown has a static header, no
  footer  and row labels, one row of column labels describing the type of data
  summarized in the columns.[133X
  
  [33X[0;0YRow  and  column  separators  are  drawn as grids (cf. [2XNCurses.Grid[102X ([14X2.2-8[114X))
  composed  from  the special characters described in Section [14X2.1-6[114X, using the
  component [10Xwork.SpecialGrid[110X of the browse table, see [2XBrowseData[102X ([14X5.4-1[114X).[133X
  
  [33X[0;0YWhen  a  row  is selected, the [21Xclick[121X functionality opens a new window (via a
  second level call to [2XNCurses.BrowseGeneric[102X ([14X4.3-1[114X)), in which a browse table
  with the list of available data for the given group is shown; in this table,
  [21Xclick[121X  results  in  adding the info for the selected row to the result list,
  and a message about this addition is shown in the footer row. One can choose
  further  data,  return  to  the  first browse table, and perhaps iterate the
  process  for  other  groups. When the first level table is left, the list of
  info records for the chosen data is returned.[133X
  
  [33X[0;0YFor the two kinds of browse tables, the standard modes in [2XBrowseData[102X ([14X5.4-1[114X)
  (except the [10Xhelp[110X mode) have been extended by a new action that opens a pager
  giving  an  overview  of all data that have been chosen in the current call.
  The corresponding user input is the [12XY[112X key.[133X
  
  [33X[0;0YThis function is available only if the [5XGAP[105X package [5XAtlasRep[105X is available.[133X
  
  [33X[0;0YThe code can be found in the file [11Xapp/atlasbrowse.g[111X of the package.[133X
  
  
  [1X6.6 [33X[0;0YAccess to [5XGAP[105X[101X[1X Manuals–a Variant[133X[101X
  
  [33X[0;0YA  [5XBrowse[105X  adapted way to access several manuals is to show the hierarchy of
  books, chapters, sections, and subsections as collapsible category rows, and
  to  regard  the  contents  of each subsection as a data row of a matrix with
  only one column.[133X
  
  [33X[0;0YThis  application  is  mainly  intended  as an example with table cells that
  exceed the screen, and as an example with several category levels.[133X
  
  [1X6.6-1 BrowseGapManuals[101X
  
  [33X[1;0Y[29X[2XBrowseGapManuals[102X( [[3Xstart[103X] ) [32X function[133X
  
  [33X[0;0YThis function displays the contents of the [5XGAP[105X manuals (the main [5XGAP[105X manuals
  as  well  as  the loaded package manuals) in a window. The optional argument
  [3Xstart[103X  describes  the  initial  status,  admissible  values  are the strings
  [10X"inline/collapsed"[110X,      [10X"inline/expanded"[110X,      [10X"pager/collapsed"[110X,      and
  [10X"pager/expanded"[110X.[133X
  
  [33X[0;0YIn the [10Xinline[110X cases, the parts of the manuals are shown in the browse table,
  and  in  the  [10Xpager[110X  case, the parts of the manuals are shown in a different
  window  when  they  are [21Xclicked[121X, using the user's favourite help viewer, see
  [14X'Reference: Changing the Help Viewer'[114X.[133X
  
  [33X[0;0YIn  the  [10Xcollapsed[110X cases, all category rows are collapsed, and the first row
  is  selected; typical next steps are moving down the selection and expanding
  single category rows. In the [10Xexpanded[110X cases, all category rows are expanded,
  and  nothing is selected; a typical next step in the [10Xinline/expanded[110X case is
  a  search  for  a string in the manuals. (Note that searching in quite slow:
  For  viewing  a part of a manual, the file with the corresponding section is
  read  into [5XGAP[105X, the text is formatted, the relevant part is cut out from the
  section, perhaps markup is stripped off, and finally the search is performed
  in the resulting strings.)[133X
  
  [33X[0;0YIf  no  argument  is  given  then the user is asked for selecting an initial
  status, using [2XNCurses.Select[102X ([14X3.1-2[114X).[133X
  
  [33X[0;0YThe  full  functionality  of  the  function [2XNCurses.BrowseGeneric[102X ([14X4.3-1[114X) is
  available.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27Xn:= [ 14, 14, 14 ];;  # ``do nothing''[127X[104X
    [4X[25Xgap>[125X [27XBrowseData.SetReplay( Concatenation([127X[104X
    [4X[25X>[125X [27X       "xdxd",                             # expand a Tutorial section[127X[104X
    [4X[25X>[125X [27X       n, "Q" ) );                         # and quit[127X[104X
    [4X[25Xgap>[125X [27XBrowseGapManuals( "inline/collapsed" );[127X[104X
    [4X[25Xgap>[125X [27XBrowseData.SetReplay( Concatenation([127X[104X
    [4X[25X>[125X [27X       "/Browse", [ NCurses.keys.ENTER ],  # search for "Browse"[127X[104X
    [4X[25X>[125X [27X       "xdxddxd",                          # expand a section[127X[104X
    [4X[25X>[125X [27X       n, "Q" ) );                         # and quit[127X[104X
    [4X[25Xgap>[125X [27XBrowseGapManuals( "inline/collapsed" );[127X[104X
    [4X[25Xgap>[125X [27XBrowseData.SetReplay( false );[127X[104X
  [4X[32X[104X
  
  [33X[0;0Y[13XImplementation  remarks[113X:  The  browse table has a dynamic header showing the
  name  of  the currently selected manual, no footer, no row or column labels,
  and  exactly  one  column  of  fixed  width  equal  to the screen width. The
  category rows are precomputed, i. e., they do not arise from a table column;
  this  way, the contents of each data cell can be computed on demand, as soon
  as  it  is  shown  on  the  screen,  in particular the category hierarchy is
  computed  without  reading the manuals into [5XGAP[105X. Also, the data rows ar                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             