Bug Fixes
New features
- New comparison mode: the UI generated with
manipulateWidget()has now new controls to enter in
comparison mode, choose the number of charts, the layout and the
variables to compare.
- compareOptions()gains a new argument- allowCompareto hide/show the new controls presented
above.
- New function mwTranslations()to translate UI
elements.
- UI has been slightly reworked.
Bug Fixes
- The number of unnecesary updates has been decreased resulting in
better performance.
- Sometimes, there were some conflict when a parameter in
manipulateWidget()had the same name as a variable in the
global environment.
- mwSelect(multiple = TRUE)was not updating charts when
selection was empty.
- staticPlot()was evaluating expressions in the wrong
environment.
Breaking changes
- shiny applications using functions mwModule()andmwModuleUI(): you have to passed directly ui options like
buttons onmwModuleUI()rather than inmwModule()
New features
- UI has now a button to save the current chart in a PNG file.
manipulateWidgetgains a new parameter “.exportBtn” to show
or hide this button.
Bugfixes
- Passing .saveBtnusing module
- Fix reset widget after saving in .html
New features
- Can add a label to mwGroup
- new mwSelectizeinput
- add .showCompare
Bugfixes
- Loss of scrollbar using shinywithfluidPageandmanipulateWidget
- Fix Handle shiny tag objects with HTML dependencies
- Preserve the class of widgets that are passed to combineWidgets
New features
- manipulateWidget()has a new parameter- .updateBtnInit. In case of update button- .updateBtn, you can decide to render graphics on init or
not.
- UI has now a button to save the current chart in an HTML file
(thanks to Benoit Thieurmel).manipulateWidgetgains a new
parameter “.saveBtn” to show or hide this button.
- manipulateWidget()has a new parameter “.runApp”. If it
is false, then the function returns an object of class- MWControllerthat can be modified using command line
instructions. This is useful to write tests for UIs created with- manipulateWidget().
- manipulateWidgetinterfaces can now be included in
shiny applications thanks to the two new functions- mwModule()and- mwModuleUI().
- A new virtual input called mwSharedValuehas been
introduced. It can be used to avoid repeating the same computations when
inputs and output use a common intermediary value. It can also be used
whenmanipulateWidget()is used in a shiny application to
send data from the main application to the module.
- manipulateWidget()now only updates the dependant
inputs and outputs when user changes the value of an input. This can
lead to important performance improvement in complicated
applications.
- mwModule()now return- controllervalue,
with possibility to use new- clear()method
- add header,footerandfluidRowarguments tomwModuleUI()
Bugfixes
- When a UI contained dynamic inputs, output was sometimes updated
before inputs, which could lead to some errors.
- Opening the same application in two browsers (or tabs) resulted in
strange results.
Breaking changes
- manipulateWidget()has lost all arguments that were
used to customize the UI. Parameters- .controlPos,- .tabColumnsand- .compareLayoutdo not exist
anymore.
New features
- manipulateWidget()now creates a more compact and
elegant user interface.
- It is now possible to compare more than two charts.
manipulateWidget()has a new argument.compareOptsto control the number of charts and their
position.
- Argument .compareofmanipulateWidgetcan
now be a character vector.
Breaking changes
- manipulateWidget()now has a simpler API to show, hide
and update inputs dynamically. Parameters- .displayand- .updateInputshave been removed.
- Functions mwUI()andmwControlsUI()have
been removed.
New Features
- manipulateWidget()gains a new parameter- .returnto modify the object returned by the function.
- manipulateWidget()has two new arguments- .widthand- .heightto control size of the UI
in Rmarkdown documents with option- runtime: shiny
- New function mwGroupcan be used to create groups of
input.
Bug fixes
- Select inputs have had a buggy behavior in some settings.
- Labels of inputs were incorrect in comparison mode.
New Features
- Variable .idis now available when evaluating the
initial properties of the input controls. This can be useful in
comparison mode, for instance to set different choices for a select
input.
Bug fixes
- Fixed a scope problem occuring when manipulateWidget was used inside
a function and parameter .updateInputswas used.
- Fixed a crash that could occur when parameters .compareand.updateInputswere used together.
New Features
- manipulateWidget()can now be used in a R Markdown
document with shiny runtime. Input controls are included in the final
document so end users can play with their values directly. (contribution
by JJ. Allaire)
- manipulateWidget()has two new arguments- .compareand- .compareLayoutto create a
comparison interface. When- .compareis set, two charts are
outputed with some common and some individual input controls (see
vignette).
- Now, input controls generated by manipulateWidget()can
be dynamically updated thanks to the new argument “.updateInputs”.
- New functions staticImage()andstaticPlot()to include in a combine widget a static image
or a static plot created with base functions, ggplot2, etc.
- In combinedWidgetsobjects, individual widgets are
stored in a property calledwidgets, so users can now
access them and modify them.
Breaking changes
- Function combineWidgets()has been entirely rewritten
and now produces a htmlwidget that can be included as is in documents or
shiny applications. The general behavior is the same, but some
parameters have changed.
New features
- manipulateWidget()can now update an already rendered
widget instead of overwriting it each time the user changes an input.
This leads to better performance and user experience. Look at the
documentation of manipulateWidget for further information.
Bug fixes
- manipulateWidget()now preserves the order of the
initial value of select inputs.
- manipulateWidget()now automatically finds the correct
render and output functions. This solves in particular sizing
problems.
- add a file LICENSE and copyright to sources files
New features
- New functions mwUI()andmwControlsUI()have been added to let the user easily reuse the user interface
generated by the package but with different server logic.
- User can now easily create group of inputs in function manipulate
widget. In the UI, these inputs are grouped in a panel that can be
collapsed/opened by clicking on its name.
Bug fixes
- Many useless but worrying warning messages have been removed.