IP Library Granted Patent US 7,730,495
Granted Patent B2
US 7,730,495 · App. 11/333,870 · Granted Jun 1, 2010

Declaratively defined control actions

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,730,495
App. No.
11/333,870
Granted
Jun 1, 2010
Kind
B2
Abstract

An extensible control design framework is utilized to declaratively define a control (both visual and non-visual) and other components. The functionality of a control may be expanded by declaratively adding behaviors and semantics via an object called an action. The control does not become unduly complex by the addition of the behaviors and semantics. The action object encapsulates well-defined functionality and is associated with an existing control. The action object is also associated with an event or trigger such that the functionality is automatically executed when the event is raised. The functionality may be packaged in an independent application component such that a user who is not familiar with programming code may easily define logic and functionality for an application in a design environment.

Claims (40)

1. A computer-readable storage medium having computer-executable instructions for declaratively defining a control action, the instructions when executed by a processor performing the steps of:

providing a visual design surface interface for defining a control;

within the visual design surface interface, associating a first action component, of a plurality of predefined action components, with the control via a property expansion method defined in the control, wherein the first action component and the control are independent and customizable components;

associating an event with the control to cause the property expansion method to execute when the event is received;

receiving a value at the control;

receiving an input on the control associated with the event to cause the property expansion method to execute and cause execution of the first action component, wherein executing the first action component comprises performing a logic operation on the value;

associating a second action component with the first action component and the control via the property expansion method defined in the control, wherein the first action component, the second action component and the control are independent and customizable components, wherein the second action component is associated with enumerated type properties such that a selection of one of the enumerated type properties causes a valid property selection to be displayed with the second action component; and

receiving the input on the control associated with the event to cause the property expansion method to execute and cause execution of the second action component.

2. The computer-readable storage medium of claim 1 , wherein associating the second action component with the first action component and the control further comprises nesting the second action component within the first action component.

3. The computer-readable storage medium of claim 1 , wherein executing the first action component further comprises associating logical semantics with the control, wherein the logical semantics are specific to an application associated with the control.

4. The computer-readable storage medium of claim 1 , wherein execution of the first action component causes at least one member of a group comprising: displaying a text effect within the control, validating the received value, resolving any incorrect data assignments associated with the received value, and discovering a property associated with the control.

5. The computer-readable storage medium of claim 1 , wherein the control is a button within the visual design surface interface.

6. The computer-readable storage medium of claim 1 , wherein execution of the first and second action components includes execution of first and second actions on a defined target within the control.

7. A computer-implemented method for declaratively defining a control action, the method comprising:

providing a visual design surface interface for defining a control;

within the visual design surface interface, associating a first action component, of a plurality of predefined action components, with the control via a property expansion method defined in the control, wherein the first action component and the control are independent and customizable components;

associating an event with the control to cause the property expansion method to execute when the event is received;

receiving a value at the control;

receiving an input on the control associated with the event to cause the property expansion method to execute and cause a processor to execute the first action component, wherein executing the first action component comprises performing a logic operation on the value;

associating a second action component with the first action component and the control via the property expansion method defined in the control, wherein the first action component, the second action component and the control are independent and customizable components, wherein the second action component is associated with enumerated type properties such that a selection of one of the enumerated type properties causes a valid property selection to be displayed with the second action component; and

receiving the input on the control associated with the event to cause the property expansion method to execute and cause a processor to execute the second action component.

8. The computer-implemented method of claim 7 , wherein associating the second action component with the first action component and the control further comprises nesting the second action component within the first action component.

9. The computer-implemented method of claim 7 , wherein executing the first action component further comprises associating logical semantics with the control, wherein the logical semantics are specific to an application associated with the control.

10. The computer-implemented method of claim 7 , wherein execution of the first action component causes at least one member of a group comprising: displaying a text effect within the control, validating the received value, resolving any incorrect data assignments associated with the received value, and discovering a property associated with the control.

11. The computer-implemented method of claim 7 , wherein the control is a button within the visual design surface interface.

12. The computer-implemented method of claim 7 , wherein execution of the first and second action components includes execution of first and second actions on a defined target within the control.

13. A system for declaratively defining a control action, the system comprising:

a processor; and

a memory having computer executable instructions stored thereon, wherein the computer executable instructions are configured for:

providing a visual design surface interface for defining a control;

within the visual design surface interface, associating a first action component, of a plurality of predefined action components with the control via a property expansion method defined in the control, wherein the first action component and the control are independent and customizable components;

associating an event with the control to cause the property expansion method to execute when the event is received;

receiving a value at the control;

receiving an input on the control associated with the event to cause the property expansion method to execute and cause the processor to execute the first action component, wherein executing the first action component comprises performing a logic operation on the value;

associating a second action component with the first action component and the control via the property expansion method defined in the control, wherein the first action component, the second action component and the control are independent and customizable components, wherein the second action component is associated with enumerated type properties such that a selection of one of the enumerated type properties causes a valid property selection to be displayed with the second action component; and

receiving the input on the control associated with the event to cause the property expansion method to execute and cause the processor to execute the second action component.

14. The system of claim 13 , wherein associating the second action component with the first action component and the control further comprises nesting the second action component within the first action component.

15. The system of claim 13 , wherein executing the first action component further comprises associating logical semantics with the control, wherein the logical semantics are specific to an application associated with the control.

16. The system of claim 13 , wherein execution of the first action component causes at least one member of a group comprising: displaying a text effect within the control, validating the received value, resolving any incorrect data assignments associated with the received value, and discovering a property associated with the control.

17. The system of claim 13 , wherein execution of the first and second action components includes a execution of first and second actions on a defined target within the control.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034543/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 29, 2006
From: KOTHARI, NIKHIL; SANABRIA, ANDRES M.
To: MICROSOFT CORPORATION
Reel/Frame 017383/0240 →