Package su.onno.ui.divkit
Class PageDivBuilder
java.lang.Object
su.onno.ui.divkit.PageDivBuilder
Renders an authored
Page to DivKit content: a header, then a recursive
PageDivBuilder.Region tree — each region is a widget grid + freeform PageComponent blocks +
nested PageDivBuilder.Rows of PageDivBuilder.Columns, so a page can compose an arbitrary column layout (and a
right rail is just the common two-column case). Built from native DivKit primitives (custom blocks
become div-custom), so it renders on every official SDK.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordOne column of aPageDivBuilder.Row: a width spec (fraction,"<n>px", or null) + its region.static final recordA page region: a widget grid (gridColumnswide), freeform components, then layout rows.static final recordA horizontal band of columns (stacks vertically on mobile). -
Method Summary
Modifier and TypeMethodDescriptionbuild(String title, String subtitle, boolean header, List<PageWidgetDescriptor> widgets, List<PageComponent> components, int columns, Function<PageWidgetDescriptor, String> values, Function<PageWidgetDescriptor, Boolean> canWrite, Palette p) build(String title, String subtitle, boolean header, List<PageWidgetDescriptor> widgets, List<PageComponent> components, List<PageWidgetDescriptor> asideWidgets, List<PageComponent> asideComponents, int columns, Function<PageWidgetDescriptor, String> values, Function<PageWidgetDescriptor, Boolean> canWrite, Palette p) Flat render with an optional right rail.build(String title, String subtitle, boolean header, PageDivBuilder.Region main, PageDivBuilder.Region aside, boolean desktop, Function<PageWidgetDescriptor, String> values, Function<PageWidgetDescriptor, Boolean> canWrite, Palette p) Render a page from its region tree.build(String title, String subtitle, List<PageWidgetDescriptor> widgets, List<PageComponent> components, int columns, Function<PageWidgetDescriptor, String> values, Function<PageWidgetDescriptor, Boolean> canWrite, Palette p)
-
Method Details
-
build
public static Map<String,Object> build(String title, String subtitle, List<PageWidgetDescriptor> widgets, List<PageComponent> components, int columns, Function<PageWidgetDescriptor, String> values, Function<PageWidgetDescriptor, Boolean> canWrite, Palette p) -
build
public static Map<String,Object> build(String title, String subtitle, boolean header, List<PageWidgetDescriptor> widgets, List<PageComponent> components, int columns, Function<PageWidgetDescriptor, String> values, Function<PageWidgetDescriptor, Boolean> canWrite, Palette p) -
build
public static Map<String,Object> build(String title, String subtitle, boolean header, List<PageWidgetDescriptor> widgets, List<PageComponent> components, List<PageWidgetDescriptor> asideWidgets, List<PageComponent> asideComponents, int columns, Function<PageWidgetDescriptor, String> values, Function<PageWidgetDescriptor, Boolean> canWrite, Palette p) Flat render with an optional right rail.asideWidgets/asideComponentscompose a narrow column beside the main content on desktop, stacked below it on mobile (columns == 1). -
build
public static Map<String,Object> build(String title, String subtitle, boolean header, PageDivBuilder.Region main, PageDivBuilder.Region aside, boolean desktop, Function<PageWidgetDescriptor, String> values, Function<PageWidgetDescriptor, Boolean> canWrite, Palette p) Render a page from its region tree.desktopcontrols layout direction: rows lay their columns out horizontally and grids use their column count; on mobile everything stacks. Anasideregion, when present, renders as a fixed-width rail to the right ofmain.
-