Dynamic State Change Notification for UI Updates
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Software modules face challenges in keeping user interface values current without the overhead of polling, especially when dealing with complex component properties and intricate interrelationships, making it impractical to implement custom UIs that account for all property changes.
Innovation Solution
Implementing a mechanism where interested modules register routines to receive notifications of changes in component instance properties, allowing them to update only the necessary UI elements without polling, using functions like AddComponentPropertyListener and RemoveComponentPropertyListener to manage callback routines.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If interested modules periodically poll component instance properties to keep UI values current, then UI display accuracy is improved, but computational waste and time consumption increase
Solution Approach 1:
The patent implements a feedback mechanism where component instances automatically notify interested modules when property values change. The component instance maintains a list of interested modules and their properties of interest, and when a property changes, the component instance sends a notification to the relevant interested modules. This eliminates the need for periodic polling while ensuring UI displays are always current, as modules receive updates only when necessary.
Solution Approach 2:
The component instance performs self-service by actively monitoring its own property changes and automatically notifying interested modules. Instead of requiring interested modules to poll for changes, the component instance takes responsibility for detecting its own state changes and propagating this information to dependent modules, thereby reducing overall system computational overhead.
2Measurement precision
If interested modules implement logic to track complex property interrelationships, then UI update accuracy is improved, but device complexity increases
Solution Approach 1:
The patent extracts the complexity of tracking property interrelationships from interested modules and centralizes it in the component instance. The component instance contains the state machine logic that understands all property dependencies and automatically determines which properties have changed. Interested modules simply register their properties of interest and receive notifications without needing to implement or understand the complex interrelationship logic.
Solution Approach 2:
The component instance acts as an intermediary between the complex property interrelationship logic and the interested modules. It absorbs the complexity of tracking how property changes propagate through the system and translates this into simple notifications for interested modules. This mediator pattern allows interested modules to remain simple while still receiving accurate update information.
3Reliability
If developers implement custom UIs that account for all property changes, then UI reliability is improved, but ease of manufacture decreases
Solution Approach 1:
The component instance provides self-service by automatically tracking all property changes and identifying which interested modules need to be notified. Developers implementing custom UIs simply need to register their properties of interest with the component instance, and the system handles all the complex logic of determining which notifications are relevant. This maintains UI reliability while dramatically simplifying the development process.
4Measurement precision
If polling frequency is increased to ensure accurate UI updates, then measurement precision is improved, but loss of time increases
Solution Approach 1:
The system uses feedback-based notifications where interested modules are informed of property changes immediately when they occur, rather than waiting for the next polling cycle. This ensures that UI updates are as timely as possible without the time waste of repeated polling, as modules receive updates only when actual changes occur.
Data Source
AI summary
A method for responding to changes to properties of component instances is disclosed. A routine, that is to be informed of changes that occur to a particular property of a plurality of properties of a component instance, is registered. The value of the particular property is detected as changed when the value of the particular property changes because of a change to another property of the plurality of properties. A call is made to the routine to indicate that the particular property has changed.


