TransparentContainer
Use
The TransparentContainer is a UI container that cannot be displayed. A TransparentContainer UI element is transparent and can be filled with an any quantity of UI elements (children). In addition, the TransparentContainer UI element allows you to arrange its inserted UI elements through the specified layout.
You can use the TransparentContainer element in the following way:
-
As a layout container (isLayoutContainer = true)
In this case, you use this element to design the layout of other UI elements. The TransparentContainer element itself does not have a tab stop and is not announced by a screen reader in accessibility mode.
-
As a grouping container (isLayoutContainer = false)
In this case, you use this element to group other UI elements. The TransparentContainer element then has a semantic meaning, like a Group element. It has a tab stop and is read by a screen reader.
TransparentContainer and Accessibility
Reading using screen containers only makes sense for accessibility if
TransparentContainer.isLayoutContainer = false.
The accessibility text is determined for a TransparentContainer from the values that are defined for properties tooltip and accessibilityDescription of the TransparentContainer.
-
If the properties named under 1. have not been set, then for accessibility reasons, the text of the values for the tooltip and text properties of the UI element SectionHeader is used.
-
If neither the properties under 1. nor 2. have been set, then for accessibility reasons, the text of the values for the tooltip and text properties of the Label UI element, which belongs to the TransparentContainer, are used.
TransparentContainer and SectionHeader
Set TransparentContainer.isLayoutContainer = false to have the title of a TransparentContainer read out by a screen reader. This means that the TransparentContainer itself contains semantic information.
Also use a SectionHeader in TransparentContainer.
Use Cases
TransparentContainer as Layout for a Form
You can use the TransparentContainer as a grouping element for a form in which you insert the SectionHeader as the title and insert further UI elements underneath.
In addition, you define the following: TransparentContainer.isLayoutContainer = false itself is important and has semantic meaning.
If you use the TransparentContainer element as a grouping container for accessibility reasons, you can create a title for this group in the following way:
-
If you do not want the group title to be visible, set the values for TransparentContainer.accessibilityDescription and TransparentContainer.tooltip.
-
Use the SectionHeader element as a visible group title. This element then replaces or represents the accessibilityDescription property.
Proceed as described below for the various cases:
Grouping Without Title
Set the property isLayoutContainer=false.
In the accessibilityDescription property, create a text that represents the group title.
Grouping with Title
-
Use the SectionHeader element as the title for the TransparentContainer element.
-
Use the labeledBy, property to associate the TransparentContainer element with the SectionHeader element.
The text and the tooltip of the SectionHeader element are read automatically as the accessibilityDescription of the TransparentContainer element, if its accessibilityDescription and tooltip are empty.
TransparentContainer as Melting Group-Like UI Element
You can use a TransparentContainer as a bracket to determine that the contents of several fields belong together, for example for currency specifications.
A TransparentContainer becomes a Melting-Group-like UI element if the following conditions are met:
-
No other containers are nested in the TransparentContainer
The TransparentContainer should only contain UI elements such as InputFields, DropDown lists, TextViews, and so on.
-
The isLayoutContainer property must be set to FALSE.
Since the TransparentContainer groups together fields that belong together, you must define that TransparentContainer.isLayoutContainer = FALSE.
-
You want a label with Property islabelFor = <D des TransparentContainer>.
You set the label before the TransparentContainer. The label has to refer to the TransparentContainer. The relevant properties of the label are then used for the accessibility texts.
TransparentContainer for Layout Purposes Only
In this case, you use the TransparentContainer for layout purposes only.
You also specify that TransparentContainer.isLayoutContainer = true. Screen readers do not read the accessibilityDescription property in this case.
Arrange the elements when you use the layout container in such a way that the sequence of the tabs cannot unexpectedly be moved. In other words: Nest the TransparentContainer so that the tab sequence cannot jump between different groupings.
Implementation Details
|
Runtime Class |
CL_WD_TRANSPARENT_CONTAINER |
Properties in View Designer
|
Name |
Type |
Initial Value |
Bindable |
|---|---|---|---|
|
STRING |
(automatic) |
No |
|
|
Translatable text |
Yes |
||
|
WDUI_ARIA_LANDMARK |
None |
Yes |
|
|
WDUI_CONTEXT_MENU_BEHAVIOUR |
inherit |
No |
|
|
WDY_MD_UI_ELEMENT_REFERENCE |
No |
||
|
WDY_MD_UI_ELEMENT_REFERENCE |
Yes |
||
|
WDY_BOOLEAN |
true |
Yes |
|
|
Translatable text |
No |
||
|
WDY_BOOLEAN |
false |
No |
|
|
STRING |
Yes |
||
|
WDY_BOOLEAN |
true |
No |
|
|
WDY_MD_UI_ELEMENT_REFERENCE |
No |
||
|
WDUI_SCROLLING_MODE |
none |
Yes |
|
|
I |
0 |
No |
|
|
I |
0 |
No |
|
| styleClassName | STRING | Yes | |
|
Translatable text |
Yes |
||
|
WDUI_VISIBILITY |
visible |
Yes |
|
|
STRING |
Yes |
Aggregations in the View Designer
Dynamic Programming
For dynamic programming, the same properties, events, and aggregations as in the View Designer are available. But note that the spelling format and use of upper/lower case is different.
Dynamic Programming of Properties
|
View Designer Name |
Runtime Name |
Type |
|---|---|---|
|
ACCESSIBILITY_DESCR |
WDY_MD_TRANSLATABLE_TEXT |
|
|
ARIA_LANDMARK |
WDUI_ARIA_LANDMARK |
|
|
ariaLandmark: Application |
CL_WD_TRANSPARENT_CONTAINER=>E_ARIA_LANDMARK-APPLICATION |
|
|
ariaLandmark: Article |
CL_WD_TRANSPARENT_CONTAINER=>E_ARIA_LANDMARK-ARTICLE |
|
|
ariaLandmark: Banner |
CL_WD_TRANSPARENT_CONTAINER=>E_ARIA_LANDMARK-BANNER |
|
|
ariaLandmark: Complementary |
CL_WD_TRANSPARENT_CONTAINER=>E_ARIA_LANDMARK-COMPLEMENTARY |
|
|
ariaLandmark: Contentinfo |
CL_WD_TRANSPARENT_CONTAINER=>E_ARIA_LANDMARK-CONTENTINFO |
|
|
ariaLandmark: Form |
CL_WD_TRANSPARENT_CONTAINER=>E_ARIA_LANDMARK-FORM |
|
|
ariaLandmark: Main |
CL_WD_TRANSPARENT_CONTAINER=>E_ARIA_LANDMARK-MAIN |
|
|
ariaLandmark: Navigation |
CL_WD_TRANSPARENT_CONTAINER=>E_ARIA_LANDMARK-NAVIGATION |
|
|
ariaLandmark: None |
CL_WD_TRANSPARENT_CONTAINER=>E_ARIA_LANDMARK-NONE |
|
|
ariaLandmark: Search |
CL_WD_TRANSPARENT_CONTAINER=>E_ARIA_LANDMARK-SEARCH |
|
|
CONTEXT_MENU_BEHAVIOUR |
WDUI_CONTEXT_MENU_BEHAVIOUR |
|
|
contextMenuBehaviour: inherit |
CL_WD_TRANSPARENT_CONTAINER=>E_CONTEXT_MENU_BEHAVIOUR-INHERIT |
|
|
contextMenuBehaviour: provide |
CL_WD_TRANSPARENT_CONTAINER=>E_CONTEXT_MENU_BEHAVIOUR-PROVIDE |
|
|
contextMenuBehaviour: suppress |
CL_WD_TRANSPARENT_CONTAINER=>E_CONTEXT_MENU_BEHAVIOUR-SUPPRESS |
|
|
CONTEXT_MENU_ID |
WDY_MD_UI_ELEMENT_REFERENCE |
|
|
DEFAULT_BUTTON_ID |
WDY_MD_UI_ELEMENT_REFERENCE |
|
|
ENABLED |
WDY_BOOLEAN |
|
|
EXPLANATION |
WDY_MD_TRANSLATABLE_TEXT |
|
|
HANDLE_HOTKEYS |
WDY_BOOLEAN |
|
|
HEIGHT |
STRING |
|
|
IS_LAYOUT_CONTAINER |
WDY_BOOLEAN |
|
|
LABELED_BY |
WDY_MD_UI_ELEMENT_REFERENCE |
|
|
SCROLLING_MODE |
WDUI_SCROLLING_MODE |
|
|
scrollingMode: auto |
CL_WD_TRANSPARENT_CONTAINER=>E_SCROLLING_MODE-AUTO |
|
|
scrollingMode: both |
CL_WD_TRANSPARENT_CONTAINER=>E_SCROLLING_MODE-BOTH |
|
|
scrollingMode: none |
CL_WD_TRANSPARENT_CONTAINER=>E_SCROLLING_MODE-NONE |
|
|
SCROLL_LEFT |
I |
|
|
SCROLL_TOP |
I |
|
| styleClassName | STYLE_CLASS_NAME | STRING |
|
TOOLTIP |
WDY_MD_TRANSLATABLE_TEXT |
|
|
VISIBLE |
WDUI_VISIBILITY |
|
|
visible: none |
CL_WD_TRANSPARENT_CONTAINER=>E_VISIBLE-NONE |
|
|
visible: visible |
CL_WD_TRANSPARENT_CONTAINER=>E_VISIBLE-VISIBLE |
|
|
WIDTH |
STRING |
|
View Designer Name |
Runtime Name |
Cardinality |
|---|---|---|
|
CHILDREN |
0..n |
Example
In the system you can find an example of a TransparentContainer as a melting group-like UI element in the DEMO_UIEL_LAYOUT component of the DEMO_UIEL_MELTING_GROUP application.