The ColumnTable is a virtual class where each column in the SummarizedExperiment is represented by no more than row in a datatable
widget.
In panels of this class, single and multiple selections can only be transmitted on the samples.
Slot overview
No new slots are added. All slots provided in the Table parent class are available.
Supported methods
In the following code snippets, x
is an instance of a ColumnTable class.
Refer to the documentation for each method for more details on the remaining arguments.
For setting up data values:
.refineParameters(x, se)
replacesNA
values inSelected
with the first column name ofse
. This will also call the equivalent Table method.
For defining the interface:
.hideInterface(x, field)
returns a logical scalar indicating whether the interface element corresponding tofield
should be hidden. This returnsTRUE
for row selection parameters ("RowSelectionSource"
and"RowSelectionRestrict"
), otherwise it dispatches to the Panel method.
For monitoring reactive expressions:
.createObservers(x, se, input, session, pObjects, rObjects)
sets up observers to propagate changes in theSelected
to linked plots. This will also call the equivalent Table method.
For controlling selections:
.multiSelectionDimension(x)
returns"column"
to indicate that a column selection is being transmitted..singleSelectionDimension(x)
returns"sample"
to indicate that a sample identity is being transmitted.
For rendering output:
.showSelectionDetails(x)
returns a HTML element containing details about the selected row. This requires a function to be registered byregisterAppOptions
under the option name"ColumnTable.select.details"
. The function should take a string containing the name of a feature (i.e., the current selection in the ColumnTable) and returns a HTML element. If no function is registered,NULL
is returned.
Unless explicitly specialized above, all methods from the parent classes Table and Panel are also available.
Subclass expectations
Subclasses are expected to implement methods for:
The method for .generateTable
should create a tab
data.frame where each row corresponds to a column in the SummarizedExperiment object.
See also
Table, for the immediate parent class that contains the actual slot definitions.