Scope
This page describes code components in GenericUISystem. The plugin contains no Widget Blueprints; your project supplies presentation, layout, and data adapters. See companion project content and example assets for inspectable examples.
Buttons and tabs
GUIS_ButtonBase is a base for project buttons; GUIS_TabButtonBase implements GUIS_TabButtonInterface. Derive your own button Widgets as needed. Tabs use GUIS_TabListWidgetBase and FGUIS_TabDescriptor: the descriptor includes a unique TabId, TabText, IconBrush, button class, and optional content class. The button class must implement GUIS_TabButtonInterface.
Configure preregistered descriptors on the tab list or use RegisterDynamicTab; associate the list with your Widget Switcher and test navigation. The old GUIS_TabDefinition and TabDefinitions are deprecated; use the current descriptor and PreregisteredTabInfoArray. GGF names and project Blueprints in old screenshots are historical examples.
Lists and detail views
GUIS_ListView and GUIS_TileView can use a GUIS_WidgetFactory to select an entry Widget for a data object. Implement the selection logic and provide your project's entry classes.
GUIS_ListEntryDetailView, GUIS_ListEntryDetailSection, and GUIS_DetailSectionsBuilder can divide an object's information into sections. Configure a suitable Builder and project Widgets, then display them in the required order.
Tip
An Item is usually an object displayed by a ListEntryWidget in a ListView, but it doesn't have to be.
Tab illustration
This image shows an older project layout; use the current API names above.