Implement ValueSource
- Dominant language
- Python
- Stars
- 5.4k
- Forks
- 827
- Avg merge
- 9h 45m
- Merged PRs (30d)
- 58
Description
ValueSource itself is already implemented, documented and tested, but there's no way to link it to any other component.
This would be required to support the Invent datastore. There's a sketch of how that might work here:
* https://github.com/beeware/toga/pull/2494
* https://github.com/invent-framework/invent/pull/62
Any implementation of this feature is likely to involve replacing all the widget `@properties` with a custom class. Such a class could also be used to store metadata for an interactive GUI builder, such as:
* A list of possible choices for the property, to generate a drop-down menu
* An icon to represent the property
Related:
* https://github.com/beeware/toga/discussions/2977
Contributor guide
Research direction
Review the existing ValueSource implementation, documentation, and tests first, then compare the proposed approach in toga PR 2494 and invent PR 62. Use the widget @properties and the linked discussion as scope references. Done means ValueSource can be linked to other components and the resulting property representation supports the stated GUI-builder metadata needs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- desktop
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100