System and method for automatic and dynamic layout of resizable dialog type windows
First Claim
1. A system for automatically and dynamically laying out elements within a window, comprising:
- specifying at least one dynamically resizable frame in a hierarchical tree structure within a parent window;
specifying at least one child element within at least one of the dynamically resizable frames;
automatically hierarchically computing a size of each dynamically resizable frame based on the hierarchical tree structure, beginning with any child elements within each frame, up to the parent window, and then back down to the individual child elements within each frame;
automatically creating a minimum sufficient number of horizontal rows within at least one dynamically resizable frame for displaying each of the child elements within each dynamically resizable frame; and
automatically arranging child elements within the automatically created horizontal rows.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention involves a new system and process for automatically and dynamically laying out elements within an overall window of a graphical user interface by using dynamically resizable frames, i.e., “FlowFrames” disposed within the window. FlowFrames are automatically and dynamically sized and positioned within the window, while one or more other frames, i.e., “child frames,” representing one or more conventional controls, nested within the FlowFrames are also sized and positioned within the window as the window is generated or resized. In particular, each FlowFrame arranges its children horizontally in a row, but dynamically wraps them to one or more additional rows and positions them in accordance with predefined relationships between the children, where they cannot all fit into the same row. Further, the size of each FlowFrame is computed hierarchically from its children up to the overall window and then back down to the individual children.
167 Citations
40 Claims
-
1. A system for automatically and dynamically laying out elements within a window, comprising:
-
specifying at least one dynamically resizable frame in a hierarchical tree structure within a parent window;
specifying at least one child element within at least one of the dynamically resizable frames;
automatically hierarchically computing a size of each dynamically resizable frame based on the hierarchical tree structure, beginning with any child elements within each frame, up to the parent window, and then back down to the individual child elements within each frame;
automatically creating a minimum sufficient number of horizontal rows within at least one dynamically resizable frame for displaying each of the child elements within each dynamically resizable frame; and
automatically arranging child elements within the automatically created horizontal rows. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A computer-implemented process for automatically arranging controls within a window of a graphical user interface, comprising:
-
constructing at least one dynamically resizable frame within a parent window;
inserting at least one control frame having at least one associated control into at least one dynamically resizable frame;
defining a preferred interrelationship between at least two controls in at least one of the dynamically resizable frames;
automatically creating a minimum sufficient number of horizontal rows within at least one dynamically resizable frame for displaying the controls within any of the dynamically resizable frames; and
automatically arranging the controls within the automatically created horizontal rows in accordance with any preferred interrelationships between the controls. - View Dependent Claims (22, 23, 24, 25, 26)
-
-
27. A computer-readable medium having computer executable instructions for automatically organizing elements within a user resizable dialog window, said computer executable instructions comprising:
-
adding at least one automatically reconfigurable frame to a parent window;
inserting at least one child element into at least one automatically reconfigurable frame;
specifying preferred indenting rules for at least one of the child elements;
dynamically creating wrapable horizontal rows within at least one automatically reconfigurable frame for displaying each of the child elements within any of the automatically reconfigurable frames; and
automatically arranging child elements within the dynamically created wrapable horizontal rows in accordance with any specified preferred indenting rules as the resizable window is resized. - View Dependent Claims (28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
-
Specification