@@ -120,7 +120,9 @@ infoBox <- function(title, value = NULL, subtitle = NULL,
120
120
# ' @param collapsed If TRUE, start collapsed. This must be used with
121
121
# ' \code{collapsible=TRUE}.
122
122
# ' @param ... Contents of the box.
123
- # ' @param wrench Adds a dropdown menu
123
+ # ' @param wrench Adds a dropdown menu. By default it does not (false).
124
+ # ' @param wrenchOptions Add menu items to the wrench icon. This must be used with
125
+ # ' \code{wrench=TRUE}. Can be also a \code{list(...)} of \code{tags$li(...)}.
124
126
# '
125
127
# ' @family boxes
126
128
# '
@@ -251,7 +253,8 @@ infoBox <- function(title, value = NULL, subtitle = NULL,
251
253
# ' @export
252
254
box <- function (... , title = NULL , footer = NULL , status = NULL ,
253
255
solidHeader = FALSE , background = NULL , width = 6 ,
254
- height = NULL , collapsible = FALSE , collapsed = FALSE , wrench = FALSE , wrenchOptions = NULL ) {
256
+ height = NULL , collapsible = FALSE , collapsed = FALSE ,
257
+ wrench = FALSE , wrenchOptions = NULL ) {
255
258
256
259
boxClass <- " box"
257
260
if (solidHeader || ! is.null(background )) {
@@ -281,6 +284,8 @@ box <- function(..., title = NULL, footer = NULL, status = NULL,
281
284
}
282
285
283
286
boxToolsTag <- NULL
287
+ boxTools <- NULL
288
+
284
289
if (collapsible == TRUE || wrench == TRUE ) {
285
290
boxToolsTag <- TRUE
286
291
} else {
@@ -296,29 +301,29 @@ box <- function(..., title = NULL, footer = NULL, status = NULL,
296
301
collapseIcon <- if (collapsed ) " plus" else " minus"
297
302
298
303
if (collapsible == TRUE ) {
299
- collapseTag <- tags $ button(class = paste0(" btn btn-box-tool" ), `data-widget` = " collapse" , shiny :: icon(collapseIcon ))
304
+ collapseTag <- tags $ button(class = paste0(" btn btn-box-tool" ),
305
+ `data-widget` = " collapse" , shiny :: icon(collapseIcon ))
300
306
}
301
307
302
308
if (wrench == TRUE ) {
303
309
wrenchTag <- div(class = paste0(" btn-group" ),
304
310
tags $ button(class = " btn btn-box-tool dropdown-toggle" , `type` = " button" ,
305
311
`data-toggle` = " dropdown" , shiny :: icon(" wrench" )),
306
312
tags $ ul(class = " dropdown-menu" , `role` = " menu" , wrenchOptions )
307
- # # TODO: how to display them ?
308
313
)
309
314
}
310
315
311
- boxToolsTag <- div(class = " box-tools pull-right" ,
316
+ boxTools <- div(class = " box-tools pull-right" ,
312
317
collapseTag ,
313
318
wrenchTag
314
319
)
315
320
}
316
321
317
322
headerTag <- NULL
318
- if (! is.null(titleTag ) || ! is.null(boxToolsTag )) {
323
+ if (! is.null(titleTag ) || ! is.null(boxTools )) {
319
324
headerTag <- div(class = " box-header" ,
320
325
titleTag ,
321
- boxToolsTag
326
+ boxTools
322
327
)
323
328
}
324
329
0 commit comments