J6/Grid/Methods
J6/Grid | Data Options Types | Actions Events Methods | Class DerivedClass | Hierarchical MultiDimensional MultiLine Virtual | Examples
The following are the methods of the base jzgrid class.
Except where otherwise indicated, row,column positions are absolute positions into the total data. This ignores any scroll or transpose, and whether the data is a matrix or a list of columns.
Isigraph event handler methods
The following methods handle isigraph events.
Method Description char character event handler mbldbl mouse button left double click mbldown mouse button left down mblup mouse button left up mbrdbl mouse button right double click mbrdown mouse button right down mbrup mouse button right up mmove mouse button move paint paint event handler
Grid event handler methods
The following methods handle grid events. Each calls the grid handler (if defined) in the parent form, with an argument of the event name:
Method Description change after cells have changed and before CELLDATA is updated click mouse left click in grid dblclick mouse left double click in grid destroy immediately before the grid is destroyed edit immediately before the grid enters edit mode enter Enter pressed in cell, if not in edit mode or combo list selection get get data request in virtual mode gridsort immediately before the grid is sorted
Future releases may add other calls to the grid handler.
Other methods
The following are the remaining public methods of the base jzgrid class.
Method Description create create grid object destroy destroy grid object readblock read block of cells readcell read single cell readmark read mark readsize read size of display setnames set grid information without refreshing grid display show show grid writeblock write block of cells writecell write cell writemark write mark zoomin/out zoom in or out
create - The create method defines global locP as the locale of the parent form. This can be given as the argument to create, otherwise if the argument is empty, the locale is assumed to be COCREATOR.
destroy - Destroy the grid object.
readblock - Read block of cells from CELLDATA. Argument is row, column, #rows, #cols. Result has the same layout as CELLDATA.
readcell - Read cell from CELLDATA. Argument is row, column.
readmark - Read currently marked cells, or cell block. Result is one of:
- empty - no cell is marked
- 2 integers - row,column of marked cell
- 4 integers - row,column of latest marked cell, row,column of originally marked cell.
readsize - read size of display. If y is empty, this returns the size in pixels required to display the grid in full. For virtual grids, this is the current data that has been read in. If y is given, it is the width,height that is allowed to display the grid (e.g. the current isigraph window size). This can be used to resize the form to fit the grid. Note that the result when y is given may be larger than when y is empty, because scrollbars may be needed when the size is limited.
The following example shows that the grid display is shorter than the available width, but at least requires all the available height:
readsize 500 300 350 300
setnames - Set grid information without refreshing the grid. The argument specifies options to be set in the grid object, either as:
- a character string of names that can be read by the grid from the form locale.
- a 2 column boxed matrix of names and corresponding values.
show - Show or refresh the grid. The argument specifies options to be set in the grid object, either as:
- a character string of names that can be read by the grid from the form locale.
- a 2 column boxed matrix of names and corresponding values.
writeblock - Write block of cells from CELLDATA. The new data can be in any of the forms acceptable for defining CELLDATA. Form is:
new writeblock row,col
writecell - Write cell to CELLDATA. Form is:
new writecell row,col
writemark - Write mark cell or cell block. Argument has one of the forms that result from readmark.
zoomin, zoomout - scales the grid. For example, assign a form ctrl+b key to make the font bigger, and ctrl+shift+b to make it smaller:
form_bctrl_fkey=: 3 : 'zoomin__grid y' form_bctrlshift_fkey=: 3 : 'zoomout__grid y'