← Back to Patent Explorer
US7417644B2 Expired / Lapsed US ⏱️ 0.0 years remaining

Dynamic pluggable user interface layout

Assignee: Microsoft Technology Licensing LLC
•
Filing: 2003-05-12
•
Granted: 2008-08-26
•
Expires: 2023-05-12
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A framework for individually controlling the layout of display elements provides management of the layout automatically via pluggable policies. Control modules are dedicated to controlling the format of respective display elements. The control modules are organized into an ancestral hierarchy tree structure. Each parent control module specifies a policy object that manages the layout of its children, and provides measurement information to ancestor control modules. When an aspect of a control module changes that will affect its layout, it makes a single call which causes the framework to utilize the relevant layout managers to layout any affected control modules.

Inventors

  • 👤 Kenneth Cooper
  • 👤 Ted Andrew Peters

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 21:33
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/44; G06F9/451

Claims Analysis

Total Claims: 26
Claim 1
Independent Claim 183 words
A method for controlling layouts of display elements of a display, said method comprising: organizing a plurality of control modules into an ancestral tree hierarchy; managing a layout of a control module by an existing directly related ancestor control module of said hierarchy; individually controlling a layout of each display element by a respective control module, the layout of each element being consistent with any requirements imposed by an ancestor of the element's control module; receiving a proposed formatting metrics update for at least one of the plurality of control modules that has a directly related ancestor control module; identifying the control modules having associated display elements with layouts that would be updated by the proposed formatting metrics update, wherein only the directly related ancestor control module manages the layout of each respective child control module in accordance with: the proposed formatting metrics update; and layout information provided by the child control module to the directly related ancestor control module; updating layouts corresponding to the identified control modules; and rendering at least one of the display elements in accordance with the updated layout.
Claim 2
Independent Claim 183 words
A method for controlling layouts of display elements of a display, said method comprising: organizing a plurality of control modules into an ancestral tree hierarchy; managing a layout of a control module by an existing directly related ancestor control module of said hierarchy; individually controlling a layout of each display element by a respective control module, the layout of each element being consistent with any requirements imposed by an ancestor of the element's control module; receiving a proposed formatting metrics update for at least one of the plurality of control modules that has a directly related ancestor control module; identifying the control modules having associated display elements with layouts that would be updated by the proposed formatting metrics update, wherein only the directly related ancestor control module manages the layout of each respective child control module in accordance with: the proposed formatting metrics update; and layout information provided by the child control module to the directly related ancestor control module; updating layouts corresponding to the identified control modules; and rendering at least one of the display elements in accordance with the updated layout.
Claim 3
Dependent Claim 55 words
A method in accordance with claim 1 , further comprising: traversing said hierarchy in depth first traversal order; and determining formatting metric values for an encountered control module in accordance with said encountered control module's existing directly related ancestor control module's formatting metric values and in accordance with the encountered control module's formatting metric values.
Claim 4
Dependent Claim 33 words
A method in accordance with claim 2 , further comprising: maintaining a previous formatting metric value if said previous formatting metric value was updated during an immediately preceding act of controlling a layout.
Claim 5
Dependent Claim 24 words
A method in accordance with claim 1 , wherein each control module comprises a pluggable, replaceable layout manager policy object for managing respective formats.
Claim 6
Dependent Claim 26 words
A method in accordance with claim 1 , wherein said formatting metric comprises at least one of preferred size, minimum size, maximum size, and constrained size.
Claim 7
Independent Claim 153 words
A method for controlling layouts of display elements of a display, a layout of each display element being controllable by an associated control module, each control module comprising formatting metrics for controlling a layout of an associated display element, said method comprising: receiving requested formatting metric values indicative of a request to update a layout of at least one display element; identifying control modules associated with each display element to be updated; organizing all control modules into an ancestral tree hierarchy; traversing said hierarchy in depth first traversal order; and as each identified control module is encountered: updating the identified encountered control module's formatting metric values in accordance with: said identified encountered control module's existing directly related ancestor control module's formatting metric values; and requested formatting metric values associated with the encountered identified control module's associated display element; and rendering at least one of the display elements in accordance with the updated layout.
Claim 8
Independent Claim 153 words
A method for controlling layouts of display elements of a display, a layout of each display element being controllable by an associated control module, each control module comprising formatting metrics for controlling a layout of an associated display element, said method comprising: receiving requested formatting metric values indicative of a request to update a layout of at least one display element; identifying control modules associated with each display element to be updated; organizing all control modules into an ancestral tree hierarchy; traversing said hierarchy in depth first traversal order; and as each identified control module is encountered: updating the identified encountered control module's formatting metric values in accordance with: said identified encountered control module's existing directly related ancestor control module's formatting metric values; and requested formatting metric values associated with the encountered identified control module's associated display element; and rendering at least one of the display elements in accordance with the updated layout.
Claim 9
Dependent Claim 33 words
A method in accordance with claim 6 , further comprising: maintaining a previous formatting metric value if said previous formatting metric value was updated during an immediately preceding act of controlling a layout.
Claim 10
Dependent Claim 26 words
A method in accordance with claim 6 , wherein said formatting metrics comprise at least one of preferred size, minimum size, maximum size, and constrained size.
Claim 11
Dependent Claim 24 words
A method in accordance with claim 6 , wherein each control module comprises a pluggable, replaceable layout manager policy object for updating respective formats.
Claim 12
Independent Claim 179 words
A system for controlling layouts of display elements of a display, said system comprising: a display device for providing said display; and a display processor, coupled to said display device, for individually controlling layouts of each display element, said display processor comprising a plurality of control modules organized in an ancestral tree hierarchy, wherein: a layout of each display element is controllable by an associated control module; each control module's layout is managed by an existing directly related ancestor control module; and the display processor is configured to: receive a proposed formatting metrics update for at least one of the plurality of control modules that has a directly related ancestor control module; identify control modules having associated display elements with layouts to be updated by the proposed formatting metrics update, wherein only the directly related ancestor control module manages the layout of each respective child control module in accordance with: the proposed formatting metrics update; and layout information provided by the child control module to the directly related ancestor control module; update layouts corresponding to the identified control modules.
Claim 13
Independent Claim 179 words
A system for controlling layouts of display elements of a display, said system comprising: a display device for providing said display; and a display processor, coupled to said display device, for individually controlling layouts of each display element, said display processor comprising a plurality of control modules organized in an ancestral tree hierarchy, wherein: a layout of each display element is controllable by an associated control module; each control module's layout is managed by an existing directly related ancestor control module; and the display processor is configured to: receive a proposed formatting metrics update for at least one of the plurality of control modules that has a directly related ancestor control module; identify control modules having associated display elements with layouts to be updated by the proposed formatting metrics update, wherein only the directly related ancestor control module manages the layout of each respective child control module in accordance with: the proposed formatting metrics update; and layout information provided by the child control module to the directly related ancestor control module; update layouts corresponding to the identified control modules.
Claim 14
Dependent Claim 34 words
A system in accordance with claim 10 , each control module comprising: a pluggable, replaceable layout manager policy object for managing respective layouts; and a layout interface module for communicating with said display device.
Claim 15
Dependent Claim 42 words
A system in accordance with claim 10 , each control module further comprising formatting metrics for controlling a format of an associated display element, wherein said formatting metrics comprise at least one of preferred size, minimum size, maximum size, and constrained size.
Claim 16
Dependent Claim 204 words
A computer readable storage medium encoded with a computer program code for directing a computer processor to control layouts of display elements of a display, a format of each display element being controllable by a respective control module, each control module comprising formatting metrics for controlling a format of a respective display element, said program code comprising: a receive request code segment for causing said computer processor to receive requested formatting metrics indicative of a request to update a format of at least one display element; an identify code segment for causing said computer processor to identify control modules associated with each display element to be updated; an organize code segment for causing said computer processor to organize all control modules into an ancestral tree hierarchy; a traverse code segment for causing said computer processor to traverse said hierarchy in depth first traversal order; and an update format code segment for causing said computer processor to, as each identified control module is encountered: update the identified encountered control module's formatting metric values in accordance with: said identified encountered control module's existing directly related ancestor control module's formatting metric values; and requested formatting metric values associated with the encountered identified control module's associated display element.
Claim 17
Dependent Claim 204 words
A computer readable storage medium encoded with a computer program code for directing a computer processor to control layouts of display elements of a display, a format of each display element being controllable by a respective control module, each control module comprising formatting metrics for controlling a format of a respective display element, said program code comprising: a receive request code segment for causing said computer processor to receive requested formatting metrics indicative of a request to update a format of at least one display element; an identify code segment for causing said computer processor to identify control modules associated with each display element to be updated; an organize code segment for causing said computer processor to organize all control modules into an ancestral tree hierarchy; a traverse code segment for causing said computer processor to traverse said hierarchy in depth first traversal order; and an update format code segment for causing said computer processor to, as each identified control module is encountered: update the identified encountered control module's formatting metric values in accordance with: said identified encountered control module's existing directly related ancestor control module's formatting metric values; and requested formatting metric values associated with the encountered identified control module's associated display element.
Claim 18
Dependent Claim 50 words
A computer readable storage medium in accordance with claim 13 , said program code further comprising: a maintain metric code segment for causing said computer processor to maintain a previous formatting metric value if said previous formatting metric value was updated during an immediately preceding act of controlling a layout.
Claim 19
Dependent Claim 29 words
A computer readable storage medium in accordance with claim 13 , wherein said formatting metrics comprise at least one of preferred size, minimum size, maximum size, and constrained size.
Claim 20
Dependent Claim 27 words
A computer readable storage medium in accordance with claim 13 , wherein each control module comprises a pluggable, replaceable layout manager policy object for updating respective formats.
Claim 21
Dependent Claim 253 words
A computer readable storage medium encoded with a computer program code for directing a computer processor to control layouts of display elements of a display, said program code comprising: an organize code segment for causing said computer processor to organize a plurality of control modules into an ancestral tree hierarchy; a manage code segment for causing said computer processor to manage a layout of a control module by an existing directly related ancestor control module of said hierarchy; and a control code segment for causing said computer processor to individually control a layout of each display element by a respective control module, the layout of each element being consistent with any requirements imposed by an ancestor of the element's control module; an identify code segment for causing said computer processor to identify control modules having associated display elements with layouts to be updated based on a proposed formatting metrics update received for at least one of the plurality of control modules that has a directly related ancestor control module; a traverse code segment for causing said computer processor to traverse said hierarchy in depth first traversal order; an update code segment for causing said computer processor, as each identified control module is encountered, to update layouts corresponding to the identified control modules, wherein only the directly related ancestor control module manages the layout of each respective child control module in accordance with: the proposed formatting metrics update; and layout information provided by the child control module to the directly related ancestor control module.
Claim 22
Dependent Claim 253 words
A computer readable storage medium encoded with a computer program code for directing a computer processor to control layouts of display elements of a display, said program code comprising: an organize code segment for causing said computer processor to organize a plurality of control modules into an ancestral tree hierarchy; a manage code segment for causing said computer processor to manage a layout of a control module by an existing directly related ancestor control module of said hierarchy; and a control code segment for causing said computer processor to individually control a layout of each display element by a respective control module, the layout of each element being consistent with any requirements imposed by an ancestor of the element's control module; an identify code segment for causing said computer processor to identify control modules having associated display elements with layouts to be updated based on a proposed formatting metrics update received for at least one of the plurality of control modules that has a directly related ancestor control module; a traverse code segment for causing said computer processor to traverse said hierarchy in depth first traversal order; an update code segment for causing said computer processor, as each identified control module is encountered, to update layouts corresponding to the identified control modules, wherein only the directly related ancestor control module manages the layout of each respective child control module in accordance with: the proposed formatting metrics update; and layout information provided by the child control module to the directly related ancestor control module.
Claim 23
Dependent Claim 62 words
A computer readable storage medium in accordance with claim 17 , said program code further comprising: a determine code segment for causing said computer processor to determine formatting metric values for an encountered control module in accordance with said encountered control module's existing directly related ancestor control module's formatting metric values and in accordance with the encountered control module's formatting metric values.
Claim 24
Dependent Claim 49 words
A computer readable storage medium in accordance with claim 18 , said program code further comprising: a maintain code segment for causing said computer processor to maintain a previous formatting metric value if said previous formatting metric value was updated during an immediately preceding act of controlling a layout.
Claim 25
Dependent Claim 28 words
A computer readable storage medium in accordance with claim 17 , wherein a format comprises at least one of preferred size, minimum size, maximum size, and constrained size.
Claim 26
Dependent Claim 27 words
A computer readable storage medium in accordance with claim 17 , wherein each control module comprises a pluggable, replaceable layout manager policy object for managing respective formats.

References Cited (Backward Citations)

US5689665A Cited
US5760772A Cited
US5886694A Cited
US6249284B1 Cited
US6118451A Cited
US6335743B1 Cited
US6456305B1 Cited
US6919890B2 Cited
US7013431B2 Cited
US6950993B2 Cited
US6944829B2 Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2011-08-26 2012-02-25 2012-08-26 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2015-08-26 2016-02-25 2016-08-26 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2019-08-26 2020-02-25 2020-08-26 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag