Rendering an HBox as a splitview
Achieve a split view display with HBOX
container and style
attribute.
Note: This feature is only available with GMA on Androidâ„¢ devices, and the GBC front-end.
By defining a TABLE
and a GRID
container in a parent
HBOX
container, it is possible to get a split view display by
setting the splitViewRendering
style attribute of the HBox class. When
using this style attribute, the TABLE
displays as a listview on the
left of the screen, while the GRID
displays as a form on the right.
First define a form with the
HBOX
container, TABLE
and
GRID
. In the code example below, the HBOX
container gets a
STYLE
attribute referencing a style named "splitview" in the
.4st
file:LAYOUT
HBOX (STYLE="splitview")
TABLE
{
[c1 |c2 ]
[c1 |c2 ]
[c1 |c2 ]
[c1 |c2 ]
}
END
GRID
{
First name: [f1 ]
Last name: [f2 ]
...
}
END
END
...
The .4st file must define the
splitViewRendering
style attribute to
"yes"
:<StyleList>
<Style name="HBox.mystyle">
<StyleAttribute name="splitViewRendering" value="yes" />
</Style>
...
</StyleList>
The program must implement a dialog that handles both parts of the split view. You
typically implement a DISPLAY ARRAY
to handle the TABLE
, and
refresh the right part of the screen contained in the GRID
, with code in the
BEFORE ROW
control block:
DISPLAY ARRAY arr TO sr.*
BEFORE ROW
DISPLAY arr[arr_curr()].first_name TO f_first_name
DISPLAY arr[arr_curr()].last_name TO f_last_name
END DISPLAY