IP Library Granted Patent US 8,296,685
Granted Patent B2
US 8,296,685 · App. 13/418,639 · Granted Oct 23, 2012

Graphics stack system and method

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 8,296,685
App. No.
13/418,639
Granted
Oct 23, 2012
Kind
B2
Abstract

A system and method are provided for drawing graphics, such as to display a user interface on a display of a mobile device. A graphics stack is used to store pre-computed coordinate values to improve performance for drawing graphics, such as to display a user interface on a display of a mobile device.

Claims (54)

1. A mobile device that performs display-related operations, comprising:

a display;

means for creating a graphics stack to store coordinate data for graphics objects;

wherein the coordinate data specifies regions related to the display, said regions defining areas within which the graphics objects may perform display-related operations;

wherein parent-child relationships between the graphics objects form a hierarchy; and

means for pushing a graphics object onto the graphics stack based upon a position of the graphics object within the hierarchy;

wherein a graphics object's display-related operation is performed after it is pushed onto the graphics stack.

2. The mobile device of claim 1 , wherein a first object occupies an upper position within the graphics stack relative to a second object,

wherein graphic context of the first object is based upon graphic context of the second object.

3. The mobile device of claim 1 , wherein the object's display-related operation to be performed comprises generating a view port for holding child objects that may be wider or taller than the view port.

4. The mobile device of claim 1 , wherein the modified coordinate data ensures that no drawing operations occur outside the bounds of the display.

5. The mobile device of claim 1 , further comprising:

means for storing at least one graphic attribute data for objects in addition to coordinate data on the graphics stack,

wherein the attribute data specifies graphics options related to the display, said options defining the manner in which the objects may perform display-related operations;

wherein the attribute data of a parent on the stack provides default values for graphics options for the parent's children on the stack; and

wherein the attribute data of a child on the stack overrides the corresponding default values.

6. The mobile device of claim 5 , wherein the graphics attribute data is selected from the group consisting of font, color, pen style, fill pattern, and image.

7. The mobile device of claim 5 , wherein a first object occupies an upper position within the graphics stack relative to a second object;

wherein a graphic attribute of the second object is based upon a graphic attribute of the first object.

8. The mobile device of claim 1 , wherein a first set of objects form a hierarchy of objects for a first context, wherein a second set of objects form a hierarchy of objects for a second context,

wherein the first set of objects are pushed onto and popped from the graphics stack based upon position of the objects within the hierarchy of the first context,

wherein the second set of objects are pushed onto and popped from the graphics stack based upon position of the objects within the hierarchy of the second context,

wherein the pushing and popping of the objects for the first and second contexts results in generating a layering of drawings on the display of the mobile device.

9. The mobile device of claim 1 , wherein an object is popped from the graphics stack after the object's display-related operation has been performed.

10. A mobile device that performs display-related operations, comprising:

a display;

instructions for execution in the mobile device for creating a graphics stack to store coordinate data for graphics objects;

wherein the coordinate data specifies regions related to the display, said regions defining areas within which the graphics objects may perform display-related operations;

wherein parent-child relationships between the graphics objects form a hierarchy; and

instructions for execution in the mobile device for pushing a graphics object onto the graphics stack based upon a position of the graphics object within the hierarchy;

wherein a graphics object's display-related operation is performed after it is pushed onto the graphics stack.

11. The mobile device of claim 10 , wherein a first object occupies an upper position within the graphics stack relative to a second object, and

wherein graphic context of the first object is based upon graphic context of the second object.

12. The mobile device of claim 10 , wherein the object's display-related operation to be performed comprises generating a view port for holding child objects that may be wider or taller than the view port.

13. The mobile device of claim 10 , wherein the modified coordinate data ensures that no drawing operations occur outside the bounds of the display.

14. The mobile device of claim 10 , further comprising:

instructions for execution in the mobile device for storing at least one graphic attribute data for objects in addition to coordinate data on the graphics stack,

wherein the attribute data specifies graphics options related to the display, said options defining the manner in which the objects may perform display-related operations;

wherein the attribute data of a parent on the stack provides default values for graphics options for the parent's children on the stack; and

wherein the attribute data of a child on the stack overrides the corresponding default values.

15. The mobile device of claim 14 , wherein the graphics attribute data is selected from the group consisting of font, color, pen style, fill pattern, and image.

16. The mobile device of claim 14 , wherein a first object occupies an upper position within the graphics stack relative to a second object; and

wherein a graphic attribute of the second object is based upon a graphic attribute of the first object.

17. The mobile device of claim 10 , wherein a first set of objects form a hierarchy of objects for a first context, wherein a second set of objects form a hierarchy of objects for a second context,

wherein the first set of objects are pushed onto and popped from the graphics stack based upon position of the objects within the hierarchy of the first context,

wherein the second set of objects are pushed onto and popped from the graphics stack based upon position of the objects within the hierarchy of the second context, and

wherein the pushing and popping of the objects for the first and second contexts results in generating a layering of drawings on the display of the mobile device.

18. The mobile device of claim 10 , wherein an object is popped from the graphics stack after the object's display-related operation has been performed.

19. The mobile device of claim 18 , wherein objects are popped from the graphics stack until the base object remains on the graphics stack.

20. The mobile device of claim 18 , wherein popping an object from the graphics stack restores the graphics context to that of the object's parent.

21. The mobile device of claim 10 , wherein if the graphics stack is empty then a default graphics context is established for the graphics stack.

22. The mobile device of claim 10 , wherein the display has a coordinate system, wherein the coordinate data comprises offset coordinate data, and wherein the offset coordinate data indicates a point in the coordinate system of the display from which a drawing operation is to occur.

23. The mobile device of claim 10 , wherein the coordinate data comprises clip rectangle coordinate data.

24. The mobile device of claim 10 , wherein the coordinate data for the graphics objects can be modified to ensure that a display-related operation would produce drawings within the bounds of the display.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Nov 5, 2014
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 034176/0557 →