#1107 closed todo (done)
Resolve UI Location
| Reported by: | Ichthyostega | Owned by: | Ichthyostega |
|---|---|---|---|
| Priority: | normal | Milestone: | 0integration |
| Component: | lumieraGui | Keywords: | gui architecture design interfaces |
| Sub Tickets: | #1108, #1117, #1128 | Parent Tickets: | #1104, #1105, #1106, #1127, #1144 |
Description
Define a Resolver component to serve as anchor for generic UI-Coordinates.
The resolver allows to treat "UI Location" in an uniform way and abstracts away the intricacies of navigating widgets with the help of the concrete UI toolkit. It has in turn to rely on a command-and-query interface, which also needs to be defined to accomplish this task
Change history (10)
comment:1 by , at 2017-10-13T20:47:27Z
| blockedby: | → 1108 |
|---|
comment:2 by , at 2017-10-13T22:04:34Z
| blocking: | 1106, 1105, 1104 → 1104, 1105, 1106 |
|---|---|
| Status: | new → accepted |
comment:4 by , at 2017-11-17T19:40:43Z
| blockedby: | 1108 → 1108, 1117 |
|---|
comment:5 by , at 2017-12-17T23:57:16Z
...so this caused an extended digression, where I've investigated iterative exploring of tree-shaped structures.
As a result of #1117, we're now able to address the generic case in a clean and succinct way. I consider this digression justified, since we've encountered similar challenges several times now, and "ad hoc" solutions tend to be rather messy for that
comment:6 by , at 2018-01-10T03:47:17Z
| Resolution: | → done |
|---|---|
| Status: | accepted → closed |
Based on this new framework, it was rather straight-forward to implement a full-blown resolver for partially specified UI paths,
including backtracking and best match. Since this whole topic is rather technically involved, I've added extensive unit test coverage;
to allow for such, a dummy implementation of the LocationQuery interface was used, based on a hard wired GenNode tree.
This dummy implementation was also used to verify the design of the tree navigation helper.
The actual implementation of LocationQuery will have to wait for a more complete implementation of our UI, including the
handling of panels, creation and access to view components within these.
comment:7 by , at 2018-02-01T18:46:18Z
| blocking: | 1104, 1105, 1106 → 1104, 1105, 1106, 1127 |
|---|
comment:8 by , at 2018-02-01T18:55:55Z
| blockedby: | 1108, 1117 → 1108, 1117, 1128 |
|---|
comment:9 by , at 2018-06-17T12:51:31Z
| blocking: | 1104, 1105, 1106, 1127 → 1104, 1105, 1106, 1127, 1144 |
|---|
comment:10 by , at 2025-12-25T00:00:00Z
| blockedby: | 1108, 1117, 1128 |
|---|---|
| blocking: | 1104, 1105, 1106, 1127, 1144 |
| Parent Tickets: | → 1104, 1105, 1106, 1127, 1144 |
| Sub Tickets: | → 1108, 1117, 1128 |
Migration MasterTickets ⟼ Subtickets-plugin

obviously, we get a trivial case, when the path is explicit,
and we need a tricky full blown resolution with backtracking
when forced to interpolate wildcards to cover a given UICoord
spec against the actual UI topology.
Do we need it?
ViewSpecconcept requires such a resolution