UI Style Model Segmentation for Design-Time Enforcement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional style mechanisms for user interface (UI) design are complex and difficult to implement efficiently, particularly in software tools that require direct manipulation and understanding of design, lacking a general and applicable solution for defining and enforcing UI styles across all aspects of design time and runtime.

Innovation Solution

A style model is introduced, divided into runtime and design-time components, allowing for the definition and enforcement of UI attributes through a WYSIWYG tool experience, with styles being grouped into themes for easy application and modification, and implemented using XML for serialization and debugging.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional style mechanisms (CSS, XSL) are used to define UI styles, then style definitions can be enforced, but the complexity and difficulty of understanding increases significantly

Engineering Contradiction:
Improvestyle enforcementVSAvoidmechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the style mechanism into distinct components: style definitions, style collections, and application layers. This segmentation allows each component to be independently managed and understood, reducing overall system complexity while maintaining enforcement capability

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces style collections as an intermediary layer between style definitions and UI elements. This mediator simplifies the application process by providing a structured hierarchy that automatically resolves style conflicts and reduces the complexity of direct style management

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If conventional style mechanisms are used, then styles can be defined, but ease of manipulation through graphics and development tools deteriorates

Engineering Contradiction:
Improvestyle definitionVSAvoidtool manipulation
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent implements dynamic style application where styles can be modified and applied in real-time through design tools. The style collection mechanism allows designers to dynamically adjust styles without breaking the enforcement rules, making the system both reliable and easy to manipulate

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent adds a temporal dimension to style manipulation by allowing styles to be defined at design time and automatically enforced at runtime. This separation of dimensions enables easy manipulation during design while maintaining strict enforcement during execution

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Adaptability or versatility

If a general styling mechanism is implemented for all UI aspects, then applicability improves, but complexity and difficulty of implementation increases

Engineering Contradiction:
Improvegeneral applicabilityVSAvoidimplementation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal style collection mechanism that can be applied to all UI elements through a common interface. Style collections serve multiple functions: organizing styles, resolving conflicts, and enabling inheritance, which simplifies implementation across diverse UI aspects while maintaining high adaptability

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS7917860B2Simple styling
Publication Date: 2011.03.29 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7917860B2 patent drawing
  • US7917860B2 patent drawing
  • US7917860B2 patent drawing

AI summary

A style model implementation that is applied to objects within a user interface to define any attributes of the objects. The model is divided into two parts: a “runtime” which uses a style definition to affect the look and feel of the user interface, and a “design-time” which is the experience presented by WYSIWYG tools used to define the look and feel of the user interface. The design-time may be implemented in terms of the run-time objects. Properties associated with the styles can be set on the objects using the design-time UI and enforced at runtime. Styles may be grouped into themes to provide an easy mechanism to apply changes to many objects.