Description Usage Arguments Details Value Author(s)
Create observers to launch a modal where users can input a list of custom row or column names. These observers register input changes in the app's memory and request an update to the affected panel.
1 2 3 4 5 6 7 8 9 10 11 | .createCustomDimnamesModalObservers(
plot_name,
slot_name,
button_name,
se,
input,
session,
pObjects,
rObjects,
source_type
)
|
plot_name |
String containing the name of the current panel. |
slot_name |
String specifying the slot of containing the names of the custom features. This will be modified by user interactions with the modal. |
button_name |
String containing the name of the button in the panel UI that launches the modal. |
se |
A SummarizedExperiment object after running |
input |
The Shiny input object from the server function. |
session |
The Shiny session object from the server function. |
pObjects |
An environment containing global parameters generated in the |
rObjects |
A reactive list of values generated in the |
source_type |
String specifying the type of the panel that is source of the selection, either |
This should be called in .createObservers
for the target panel.
It assumes that a button element with the suffix button_name
is available in the UI (i.e., the full name is created by concatenated plot_name
with button_name
).
The modal UI provides options to sort the dimnames, validate them, clear the current text and import a selection from a specified row transmitter. These are all transient until “Apply” is clicked, at which point the app's memory is modified and an update is requested.
The custom names are stored in the slot_name
as a single string with names separated by newlines.
Hashes are treated as comments and any content after a hash is ignored when interpreting the names.
Any leading and trailing whitespace is also ignored during interpretation.
Observers are set up to launch the modal and monitor its UI elements.
A NULL
is invisibly returned.
Kevin Rue-Albrecht
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.