IP Library Granted Patent US 9,250,929
Granted Patent B2
US 9,250,929 · App. 13/409,977 · Granted Feb 2, 2016

Method and apparatus for form automatic layout

Inventors: Nicholas James Thomson (Redmond, WA); Dmitri Davydok (Redmond, WA); Anthony Lee (Seattle, WA); Ian Carl Legler (Redmond, WA)
Assignee: CALLAHAN CELLULAR L.L.C.
G06F9/4448G06F17/289G06F17/243
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 9,250,929
App. No.
13/409,977
Granted
Feb 2, 2016
Kind
B2
Abstract

A method and apparatus are provided for determining the layout of a form automatically to accommodate text in the form. Under the method and apparatus, a set of parameters define the sizing and alignment of elements of the form. Sizing and positioning instructions that are separate from the sizing and alignment parameters set the sizing and positioning of elements of the form based on the sizing and alignment parameters. The instructions determine the minimum size for the form, based in part on text in the form. The difference between the minimum size for the form and a desired size for the form is then distributed across the form to size and position the elements in the form.

Claims (53)

1. A computer-readable storage medium having stored thereon computer-executable components that, in response to execution, cause a computing system to perform operations, comprising:

defining, using at least one first parameter, a grid entity comprising a plurality of rows and at least one column of a form;

grouping, using at least one second parameter, at least two of the plurality of rows including maintaining a same vertical dimension for the at least two of the plurality of rows; and

setting a size and an alignment of elements to be displayed in the form based on the at least one first parameter and the at least one second parameter.

2. The computer-readable storage medium of claim 1 , wherein the operations further comprise:

determining a difference between a first minimum size for a first dimension of the form and a requested size for the first dimension; and

distributing an amount of space represented by the difference across the form by setting a size of a second dimension of at least one element of the elements to be larger than a second minimum size for the second dimension.

3. The computer-readable storage medium of claim 2 , wherein the operations further comprise:

determining the second minimum size for the second dimension of the at least one element based on a size of text associated with the at least one element.

4. The computer-readable storage medium of claim 2 , wherein the operations further comprise:

comparing the second minimum size for the second dimension of the at least one element with a third minimum size indicated by at least one third parameter; and

setting, as the second minimum size for the second dimension of the at least one element, a larger minimum size of the second minimum size and the third minimum size.

5. The computer-readable storage medium of claim 1 , wherein the operations further comprise:

designating, using at least one third parameter, a row of the form as being at least one of growable or non-growable.

6. The computer-readable storage medium of claim 1 , wherein the operations further comprise:

designating, using at least one third parameter, a column of the form as being at least one of growable or non-growable.

7. The computer-readable storage medium of claim 1 , wherein the operations further comprise:

determining a difference between a first minimum size for a dimension of the form and a specified size of the dimension;

dividing the difference into blocks of space; and

setting, according to the blocks of space, respective sizes of the elements and respective positions of the elements in the form.

8. The computer-readable storage medium of claim 7 , wherein the setting the respective sizes of the elements and the respective positions of the elements includes distributing the blocks of space approximately evenly among the elements.

9. A method, comprising:

defining a grid entity for a form according to at least one first parameter, the grid entity comprising a plurality of rows and at least one column of a form;

grouping at least two of the plurality of rows according to at least one second parameter including maintaining a same vertical dimension for the at least two of the plurality of rows; and

sizing and aligning elements to be displayed in the form based on the at least one first parameter and the at least one second parameter.

10. The method of claim 9 , further comprising:

determining a difference between a first minimum size for a first dimension of the form and a specified size for the first dimension; and

distributing the difference across the form by setting a size of a second dimension of at least one of the elements to be larger than a second minimum size for the second dimension of the at least one of the elements.

11. The method of claim 10 , further comprising determining the second minimum size based on a size of text associated with the at least one of the elements.

12. The method of claim 10 , further comprising:

setting, as the second minimum size of the at least one of the elements, a larger of the second minimum size and a third minimum size indicated by at least one third parameter.

13. The method of claim 9 , further comprising designating a row of the form as being at least one of growable or non-growable.

14. The method of claim 9 , further comprising designating a column of the form as being at least one of growable or non-growable.

15. The method of claim 9 , further comprising:

determining a difference between a first minimum size for a dimension of the form and a requested size for the dimension;

dividing the difference into blocks of space; and

setting respective sizes of the elements and respective positions of the elements in the form based on the blocks of space.

16. The method of claim 15 , wherein the setting comprises distributing the blocks of space approximately evenly between the elements.

17. A method comprising:

defining, by a system comprising a processor, a grid entity that includes two or more rows and one or more columns of a form;

defining a group comprising at least two rows of the two or more rows wherein the at least two rows maintain a same vertical dimension; and

setting a size and an alignment of elements to be displayed in the form based on one or more parameters used to define the grid.

18. The method of claim 17 , further comprising:

determining a difference between a first minimum size for a dimension of the form and a requested size of for the dimension;

dividing the difference into blocks of space; and

setting, according to the blocks of space, respective sizes of the elements and respective positions of the elements within the form.

19. The method of claim 18 , wherein the setting the respective sizes of the elements and respective positions of the elements includes distributing the blocks of space approximately equally between the elements.

20. A system, comprising:

at least one memory;

at least one processor, communicatively coupled to the at least one memory, configured to facilitate operation of computer-executable components stored in the at least one memory, the computer-executable components comprising:

a first component configured to maintain parameters that describe a size and a position of elements to be displayed in a form, wherein the parameters include first parameters that define a grid entity, the grid entity comprising a plurality of rows and at least one column, and second parameters that group at least two of the plurality of rows together, wherein the at least two of the plurality of rows maintain a same vertical dimension; and

a second component configured to set the size and the position of the elements in the form based on the parameters.

21. The system of claim 20 , wherein the second component is further configured to determine a difference between a first minimum size for a dimension of the form and a requested size for the dimension, divide the difference into blocks of space, and set respective sizes and positions of the elements in the form according to the blocks of space.

Assignments (2)
MERGER Recorded Nov 25, 2015
From: JOWTIFF BROS. A.B., LLC
To: CALLAHAN CELLULAR L.L.C.
Reel/Frame 037159/0456 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2012
From: MICROSOFT CORPORATION
To: JOWTIFF BROS. A.B., LLC
Reel/Frame 027792/0299 →
Continuity (3)
Continuation 12546240 · Aug 24, 2009
Continuation 11035666 · Jan 14, 2005
Related Publication 20120159299A1 · Jun 21, 2012