component mechanics

This commit is contained in:
John Lancaster
2026-08-29 17:01:09 -05:00
parent 512db5f526
commit c866d1bdb0
4 changed files with 159 additions and 263 deletions
@@ -60,9 +60,9 @@ Load [styling and customization](./references/styling-and-customization.md) for:
- cosmetic treatment of controls, surfaces, typography, and visual states
- visual validation at supported viewport sizes
### Component Mechanics And Customization
### Component Mechanics
Load [component mechanics and customization](./references/component-mechanics-and-customization.md) for:
Load [component mechanics](./references/component-mechanics.md) for:
- the NiceGUI Python wrapper, element bridge, Quasar component, and Vue runtime boundaries
- deciding between constructors, bindings, Quasar props, events, slots, and frontend methods
@@ -70,13 +70,14 @@ Load [component mechanics and customization](./references/component-mechanics-an
- detached content and external icon assets
- source research against the installed NiceGUI and bundled Quasar versions
- `ui.select` and `ui.icon` mechanics and caveats
- dialog scaling when detached popup geometry must be preserved
- scoped component slots and their interaction contracts
### Editable Tables
Load [editable tables](./references/tables.md) for:
- Python-authoritative editable `ui.table` state
- rendering dataframe records into row-scoped bindable dataclasses
- stable row identity across sorting, filtering, and pagination
- NiceGUI editors in Quasar `body-cell-*` scoped slots
- validation, persistence, rejection, and canonical row refresh
@@ -128,7 +129,7 @@ Load [source documentation](./references/source-documentation.md) when:
1. Load [application architecture](./references/architecture.md) for page and component ownership decisions.
2. Load [styling and customization](./references/styling-and-customization.md) for themes, layout, responsive presentation, utility classes, or CSS.
3. Load [component mechanics and customization](./references/component-mechanics-and-customization.md) when behavior must be mapped across NiceGUI, Quasar, and Vue, or when detached content and component-specific behavior are involved.
3. Load [component mechanics](./references/component-mechanics.md) when behavior must be mapped across NiceGUI, Quasar, and Vue, or when detached content and component-specific behavior are involved.
4. Load [editable tables](./references/tables.md) when table cells accept user changes or `QPopupEdit` is being considered.
5. Add [interaction patterns](./references/interaction-patterns.md) or [bindable dataclasses](./references/binding-dataclasses.md) according to the page behavior.