GBC 5.00.12 new features and upgrade notes
A summary of new features and changes in functionality introduced with Genero Browser Client (GBC) 5.00.12. Note the changes you may need to make when moving to this version of the GBC.
This page covers only those new features introduced with the Genero Browser Client version specified in the page title. Check prior new features pages if you migrate from an earlier version.
For a detailed list of GBC 5.00.12 changes, please refer to the list of fixes on our issue tracker.
Previous new features page: GBC 5.00.11 new features and upgrade notes.
New table highlighting framework
There has been a review of the table highlighting system when a table is focused in input mode,
and when highlightCurrentRow
and/or highlightCurrentCell
are
enabled. The text color and background color are now corrected (for example, white on deep blue by
default).
We advice you to use the new naming for the CSS classes described in What is changing in CSS?. You may need to review JavaScript in your existing
customizations for changes to indexing methods in RTableRowWidget
and
RTableColumnWidget
, as described in What is changing in JavaScript?.
What is changing in CSS?
- The widgets
RTableItemWidget
,RTableRowWidget
, andRTableColumnWidget
no longer implement thegbc_WidgetBase_in_array
andgbc_isInTable
CSS classes. As these widgets must be instantiated in a table, this enhancement helps avoid CSS selector collisions. - The
RTableItemWidget
highlight system was widely reviewed to reduce selector complexity. It now usesgbc_isHighlighted
CSS class to highlight the current row and current cell. Also a better color inheritance scheme was implemented. - The
.mt-field
CSS class definition was replaced by a SASS mixin that is included in all the necessary widgets. You can modify it by declaring the mixin in your customization files. Your modifications will add to the current mixin. The CSS class.mt-field
should be considered deprecated.This modification may affect your customizations as some specific CSS selectors have changes.
- The usage of
.mt-label
CSS class should be considered deprecated.
Old classes are still valid, but they are deprecated and will be subject to disappear. If you have customizations, don't hesitate to change class names to fit the new ones.
Classes | Replaces deprecated class | Comment |
---|---|---|
gbc_isStandalone |
gbc_WidgetBase_standalone |
It is applied when a widget is not in a table, scrollgrid, matrix, or dropdown. It replaces
gbc_WidgetBase_standalone , which is deprecated. The new class name is more
consistent with naming conventions. |
gbc_isInTable |
gbc_WidgetBase_in_array |
It is applied when a widget is in a table (classic or flipped). It replaces
gbc_WidgetBase_in_array , which is deprecated. The new class is specific to table.
|
|
gbc_WidgetBase_in_array |
It is applied when a widget is in a scrollgrid (classic or stretchable). It replaces
gbc_WidgetBase_in_array , which is deprecated. The new class is specific to
scrollgrid. |
gbc_isInMatrix
|
gbc_WidgetBase_in_grid_matrix |
It is applied when a widget is in a matrix. It replaces
gbc_WidgetBase_in_grid_matrix , which is deprecated. The new class name is more
consistent with naming conventions. |
gbc_isHighlighted |
It is applied to a widget when it should be highlighted. It is mostly used to highlight the
rows and cells in a RTableWidget . |
|
gbc_hasFocusedChild |
It is applied to RTableWidget when in input mode and when one of its
descendants is "focused" by the GBC. |
The usage of the old CSS classes shown in Table 2 should be considered obsolete and be replaced with the new name.
Old class | Renamed to |
---|---|
gbc_RTableItemSelectionArea |
gbc_RTableWidget__itemSelectionArea
|
currentRow
|
gbc_isCurrentRow
|
currentColumn
|
gbc_isCurrentColumn
|
currentCell |
gbc_isCurrentCell
|
selectedRow |
gbc_isSelected
|
multirowSelection |
gbc_multirowSelectionEnabled
|
gbc_TreeAnchor
|
gbc_RTableItemWidget__treeAnchor
|
What is changing in JavaScript?
- A new method to query a specific item,
getChild(index)
, is introduced into theWidgetGroupBase
JavaScript class. - The methods
getItems()
andgetItem(index)
ofRTableRowWidget
andRTableColumnWidget
are now deprecated. It is recommended that you usegetChildren()
andgetChild(index)
instead.
Specify a path to install the gbc build
package
The gbc command is typically installed globally with your node.js
installation. If you don’t have rights to install new tools globally on your system, you can
configure Node Package Manager (NPM) with npm config set prefix
to install the
gbc build tool in any directory you have read/write access to. For more
information, go to Set up your GBC build environment
New theme variables to define padding for label widgets
$gbc-LabelWidget-margin
variable is replaced by two new variables for
specifying padding for label widgets.See Theme variables reference for more details.