FreshPatents.com Logo
stats FreshPatents Stats
n/a views for this patent on FreshPatents.com
Updated: April 21 2014
newTOP 200 Companies filing patents this week


    Free Services  

  • MONITOR KEYWORDS
  • Enter keywords & we'll notify you when a new patent matches your request (weekly update).

  • ORGANIZER
  • Save & organize patents so you can view them later.

  • RSS rss
  • Create custom RSS feeds. Track keywords without receiving email.

  • ARCHIVE
  • View the last few months of your Keyword emails.

  • COMPANY DIRECTORY
  • Patents sorted by company.

AdPromo(14K)

Follow us on Twitter
twitter icon@FreshPatents

Object model for a user interface

last patentdownload pdfdownload imgimage previewnext patent


20120284653 patent thumbnailZoom

Object model for a user interface


Various embodiments provide techniques and processes for defining elements of a user interface (UI) using a tree of objects created based on a markup language. In some embodiments, a client application provides markup that defines one or more aspects of a UI to an application programming interface (API). The API parses the markup to determine a namespace and one or more UI elements defined by the namespace. Instances of the UI elements are created, and properties of the UI elements are set on the instances. A user interface may then be displayed that includes the instances of the UI elements.
Related Terms: Namespace

Browse recent Microsoft Corporation patents - Redmond, WA, US
Inventors: Shawn A. Van Ness, Paul J. Kwiatkowski, Nikhil Dang, Martyn S. Lovell
USPTO Applicaton #: #20120284653 - Class: 715760 (USPTO) - 11/08/12 - Class 715 
Data Processing: Presentation Processing Of Document, Operator Interface Processing, And Screen Saver Display Processing > Operator Interface (e.g., Graphical User Interface) >Mark Up Language Interface (e.g., Html)

view organizer monitor keywords


The Patent Description & Claims data below is from USPTO Patent Application 20120284653, Object model for a user interface.

last patentpdficondownload pdfimage previewnext patent

PRIORITY

This application is a divisional of and claims priority under 35 U.S.C. §121 to application Ser. No. 12/163,367 filed on Jun. 27, 2008 and titled “Object Model for a User Interface,” the disclosure of which is incorporated by reference herein in its entirety.

BACKGROUND

Object-oriented programming (OOP) provides techniques for creating binary software components (objects) that can interact with each other. One example of OOP is the Component Object Model (COM). COM specifies an object model and programming requirements that enable this object interaction. A COM object can be created using one of a variety of different programming languages (e.g., C++, Visual Basic, and so on). The flexibility and simplicity of COM have enabled it to become a widely adopted and long-lived standard. However, certain aspects of COM present challenges when creating a graphical user interface (GUI).

First, COM typically lacks the ability to support a new object class which extends from a base class. As a result, a first party is unable to create a COM object that derives from and extends a COM object that is created by another party. Second, it is difficult to interface COM objects with declarative markup languages (e.g., XAML) to specify layouts, appearances, behaviors of a particular part or parts of a GUI. These particular challenges can make it difficult for COM to be used to implement a GUI.

SUMMARY

This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.

Various embodiments provide techniques and processes for defining elements of a user interface (UI) using a tree of objects created based on a markup language. In some embodiments, a client application provides markup that defines one or more aspects of a UI to an application programming interface (API). The API parses the markup to determine a namespace and one or more UI elements defined by the namespace. Instances of the UI elements are created, and properties of the UI elements are set on the instances. A user interface may then be displayed that includes the instances of the UI elements.

BRIEF DESCRIPTION OF THE DRAWINGS

The same numbers are used throughout the drawings to reference like features.

FIG. 1 illustrates one example of an operating environment in which various principles and techniques described herein for generating user interface elements can be employed in accordance with one or more embodiments.

FIG. 2 illustrates one example of an object-oriented architecture that can implement techniques and processes for user interface creation discussed herein, in accordance with one or more embodiments.

FIG. 3 is a flow diagram of one example process for generating user interface elements utilizing techniques discussed herein, according to one or more embodiments.

FIG. 4 is a flow diagram of one example process for generating user interface elements utilizing the object-oriented architecture discussed herein, according to one or more embodiments.

DETAILED DESCRIPTION

Overview

Various embodiments provide a user interface (UI) platform that implements aspects of a markup language (e.g., XML, XAML, and so on) and object-oriented programming methods to provide flexible and customizable ways of defining and/or generating a graphical UI. While the UI platform is discussed with reference to component object model (COM) methodology and terminology, this is not intended to be limiting, and any suitable object-oriented programming methodology may be utilized without departing from the spirit and scope of the claimed embodiments.

The UI platform includes a User Interface Object Model (UIOM) that enables developers to create new object class types that inherit and/or override functionality from base classes. UIOM also enables objects and/or object properties to be referenced by name (e.g., within a namespace), such that objects and/or properties can be coded in a markup language to specify the layout, appearance, and/or behavior of one or more aspects of a UI. In some embodiments, UIOM includes an application programming interface (API) that manages the loading, registration, instantiation, and/or initialization of UIOM classes. A UIOM class may also inherit properties and/or behavior from a base class defined by UIOM.

In an implementation example, the UI platform receives markup from a client application that defines one or more aspects of a UI. The UI platform then parses the markup looking for a namespace and a class name of a UI object within the namespace. In some embodiments, a namespace comprises multiple class type objects, with each class type object representing one or more UI elements such as a button, a textbox, a banner, and so on. In this example, if the platform encounters the markup “acme:textbox”, the platform recognizes that the markup designates the namespace “acme” and the “textbox” class name within the “acme” namespace. The UI platform then creates a tree of one or more COM objects that correspond to the namespace “acme” and class name “textbox”, and sets properties (e.g., visual attributes such as size, color, and so on) on the object(s) within the tree. The tree includes a “textbox” node with particular properties, and the “textbox” node is used to display a textbox in a UI. As discussed above, the “textbox” node may inherit properties and or functionally from a UIOM base class.

In the discussion that follows, a section entitled “Operating Environment” is provided and describes an environment in which one or more embodiments can be employed. Following this, a section entitled “Example Architecture” is provided and describes one example of an object-oriented architecture that can implement various principles and techniques discussed herein. Next, a section entitled “Example Processes” discusses a few examples of processes that may implement various techniques discussed herein for defining and/or generating various aspects of a user interface. Following this, a section entitled “Implementation Specifics” discusses a variety of implementation details for implementing the UIOM architecture in one or more embodiments. Finally, some example object interfaces are provided that implement a variety of UI creation methods that utilize the UIOM architecture.



Download full PDF for full patent description/claims.

Advertise on FreshPatents.com - Rates & Info


You can also Monitor Keywords and Search for tracking patents relating to this Object model for a user interface patent application.
###
monitor keywords



Keyword Monitor How KEYWORD MONITOR works... a FREE service from FreshPatents
1. Sign up (takes 30 seconds). 2. Fill in the keywords to be monitored.
3. Each week you receive an email with patent applications related to your keywords.  
Start now! - Receive info on patent apps like Object model for a user interface or other areas of interest.
###


Previous Patent Application:
Human-environment interactive system and portable device using the same
Next Patent Application:
Method and apparatus for returning to home screen in portable terminal with multi-software platform
Industry Class:
Data processing: presentation processing of document
Thank you for viewing the Object model for a user interface patent info.
- - - Apple patents, Boeing patents, Google patents, IBM patents, Jabil patents, Coca Cola patents, Motorola patents

Results in 0.63643 seconds


Other interesting Freshpatents.com categories:
Qualcomm , Schering-Plough , Schlumberger , Texas Instruments , -g2-0.1511
     SHARE
  
           

FreshNews promo


stats Patent Info
Application #
US 20120284653 A1
Publish Date
11/08/2012
Document #
13550278
File Date
07/16/2012
USPTO Class
715760
Other USPTO Classes
International Class
06F3/01
Drawings
5


Namespace


Follow us on Twitter
twitter icon@FreshPatents