mirror of
https://github.com/rstudio/shiny.git
synced 2026-02-10 06:35:13 -05:00
* adding section to roxygen docs for server value of input funcs * add more server values to roxygen docs * add more server values * update more server values in documentation * Address PR feedback I reflowed the comments to have a max width of 80 on some files, so there were a flurry of line changes, but the only substantive changes were around Joe's comments. * Update R/input-slider.R Co-Authored-By: Hadley Wickham <h.wickham@gmail.com> * Apply suggestions from code review Co-Authored-By: Carson Sievert <cpsievert1@gmail.com> * PR feedback, regenerate docs. * PR Feedback * Eliminate extra newline * passwordInput()'s server value * varSelectInput()'s server value * document
45 lines
1.2 KiB
R
45 lines
1.2 KiB
R
#' Checkbox Input Control
|
|
#'
|
|
#' Create a checkbox that can be used to specify logical values.
|
|
#'
|
|
#' @inheritParams textInput
|
|
#' @param value Initial value (`TRUE` or `FALSE`).
|
|
#' @return A checkbox control that can be added to a UI definition.
|
|
#'
|
|
#' @family input elements
|
|
#' @seealso [checkboxGroupInput()], [updateCheckboxInput()]
|
|
#'
|
|
#' @examples
|
|
#' ## Only run examples in interactive R sessions
|
|
#' if (interactive()) {
|
|
#'
|
|
#' ui <- fluidPage(
|
|
#' checkboxInput("somevalue", "Some value", FALSE),
|
|
#' verbatimTextOutput("value")
|
|
#' )
|
|
#' server <- function(input, output) {
|
|
#' output$value <- renderText({ input$somevalue })
|
|
#' }
|
|
#' shinyApp(ui, server)
|
|
#' }
|
|
#'
|
|
#' @section Server value:
|
|
#' `TRUE` if checked, `FALSE` otherwise.
|
|
#'
|
|
#' @export
|
|
checkboxInput <- function(inputId, label, value = FALSE, width = NULL) {
|
|
|
|
value <- restoreInput(id = inputId, default = value)
|
|
|
|
inputTag <- tags$input(id = inputId, type="checkbox")
|
|
if (!is.null(value) && value)
|
|
inputTag$attribs$checked <- "checked"
|
|
|
|
div(class = "form-group shiny-input-container",
|
|
style = if (!is.null(width)) paste0("width: ", validateCssUnit(width), ";"),
|
|
div(class = "checkbox",
|
|
tags$label(inputTag, tags$span(label))
|
|
)
|
|
)
|
|
}
|