Method for resizing user interface elements for an operating system
First Claim
1. A method in an operating system for resizing an operating system interface element containing controls, the controls being defined by control definitions stored in a memory, the method comprising the steps of:
- receiving a command to resize said interface element;
responsively to said step of receiving, defining resizable regions of said interface element responsively to said control definitions, wherein the step of defining includes cumulating a total score by adding a value associated with each of said control definitions with each control in a given column or row contributing its respective value to the total score for the respective column or row, said column or row being designated as resizable based on the total score for said column or row;
resizing said interface element responsively to a result of said step of defining, whereby said interface element is resized by resizing only said resizable regions of said interface element.
2 Assignments
0 Petitions
Accused Products
Abstract
An operating system program allows dialogue boxes, defined without any explicit resizing parameters, to be resized appropriately to the types of controls contained within them. The approach is to “walk-through” the dimensional definitions for the controls, their sizes and positions, and the dimensions of the dialogue box itself. With this information, rows and columns are defined and identified as resizable. When the dialogue box dimensions are changed, the additional length is distributed among the resizable rows and columns. According to the method, only rows, only columns, both rows and columns, and neither rows nor columns are identified as resizable. The method involves making a set of specifications about the resizing behavior of the various types of controls. The operating system essays the resource file for the dialogue, or a memory image derived from it, to define columns and rows partitioning the various controls. One set of columns and rows corresponds to borders. The operating system determines which columns and which rows are resizable based on the types of controls in each column and row. From this information, it is determined along which axes the dialogue can grow. Border columns and rows can be designated as special and controls in them treated as a single entity to maintain controls in stylistically preferred arrangements upon resizing.
-
Citations
23 Claims
-
1. A method in an operating system for resizing an operating system interface element containing controls, the controls being defined by control definitions stored in a memory, the method comprising the steps of:
-
receiving a command to resize said interface element;
responsively to said step of receiving, defining resizable regions of said interface element responsively to said control definitions, wherein the step of defining includes cumulating a total score by adding a value associated with each of said control definitions with each control in a given column or row contributing its respective value to the total score for the respective column or row, said column or row being designated as resizable based on the total score for said column or row;
resizing said interface element responsively to a result of said step of defining, whereby said interface element is resized by resizing only said resizable regions of said interface element. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method in an operating system for resizing an operating system interface element containing controls, the controls being defined by control definitions stored in a memory, the method comprising the steps of:
-
defining guides separating columns and rows of said controls;
assigning to each of said controls an attribute based on the type of control, the attribute being either vertically resizable, horizontally resizable, or non-resizable;
designating each of said columns and rows as resizable based on said attributes of said controls overlying said each of said columns and rows, wherein the step of designating includes cumulating a total score by adding a value associated with each of said attributes with each control in a given column or row contributing its respective value to the total score for the respective column or row, said column or row being designated as resizable based on the total score for said column or row. - View Dependent Claims (8, 9, 10, 11, 12)
determining whether a set of said controls lies in a predetermined geometric configuration with a predefined range of tolerance;
resizing said interface element while maintaining a fixed geometric distance between said controls of said set after said step of resizing.
-
-
11. A method as in claim 10, wherein:
-
said interface element is a dialogue box; and
said step of determining includes determining if each of said set of controls defines a common line aligned with a lower-most edge or a right-most edge of each of said set of controls and said common line is within a predetermined distance of a respective edge of said interface element.
-
-
12. A method as in claim 10, wherein said step of resizing includes:
-
defining guides separating columns and rows of said controls;
assigning to each of said controls an attribute based on the type of control, the attribute being either vertically resizable, horizontally resizable, or non-resizable; and
designating each of said columns and rows as resizable based on said attributes of said controls overlying said each of said columns and rows.
-
-
13. A method in an operating system for resizing a dialogue box of a graphical user interface, said dialogue box containing controls, the controls being defined by properties indicating respective positions of each of said controls within said dialogue box and control-type data indicating respective types of each of said controls stored in a memory, the method comprising the steps of:
-
identifying for each type of control in said control-type data, whether said type of control is resizable in a vertical direction;
dividing an area of said dialogue box into rows;
for at least one of said rows, determining overlying ones of said controls that overlie said at least one of said rows and designating said at least one of said rows as resizable when at least one of said overlying controls is of a type determined, in said step of identifying, to be resizable, wherein said step of designating includes cumulating a total score by adding a value associated with each of said overlying controls with each control in a given row contributing its respective value to the total score for the respective row, said row being designated as resizable based on the total score for said row; and
resizing said dialogue box by stretching said at least one of said rows designated as resizable in said step of designating. - View Dependent Claims (14, 15)
said at least one of said rows is at least two of said rows; and
said step of resizing includes stretching by equal displacements each of said at least two of said rows designated as resizable in said step of resizing.
-
-
15. A method as in claim 13, further comprising the step of stretching vertically at least one said overlying controls.
-
16. A method in an operating system for resizing a dialogue box of a graphical user interface, said dialogue box containing controls, the controls being defined by properties indicating respective positions of each of said controls within said dialogue box and control-type data indicating respective types of each of said controls stored in a memory, the method comprising the steps of:
-
identifying for each type of control in said control-type data, whether said type of control is resizable in a horizontal direction;
dividing an area of said dialogue box into columns;
for at least one of said columns, determining overlying ones of said controls that overlie said at least one of said columns and designating said at least one of said columns as resizable when at least one of said overlying controls is of a type determined, in said step of identifying, to be resizable, wherein said step of designating includes cumulating a total score by adding a value associated with each of said overlying controls with each control in a given column contributing its respective value to the total score for the respective column, said column being designated as resizable based on the total score for said column; and
resizing said dialogue box by stretching said at least one of said columns designated as resizable in said step of designating.
-
-
17. A method of forming a dialogue box by a graphical user interface, said dialogue box containing controls and having multiple subareas, said method comprising the steps of:
-
defining said dialogue box and storing resulting definition data in a computer permanent storage;
loading said resulting definition data into a memory of said computer;
displaying said dialogue box on a display of said computer;
receiving through an input of said computer a command to resize said dialogue box;
determining at least one resizable subarea of said dialogue box to stretch responsively to a type of a control defined in said definition data, whereby a need for defining resizability information in said definition data is avoided, wherein said step of determining includes cumulating a total score by adding a value associated with each control in a given subarea contributing its respective value to the total score for the respective subarea, said subarea being designated as resizable based on the total score for said subarea. - View Dependent Claims (18, 19, 20)
-
-
21. A method in an operating system for resizing an operating system interface element containing controls, the controls being defined by control definitions stored in a memory, the method comprising the steps of:
-
defining guides separating columns and rows of said controls; and
designating each of said columns and rows as resizable based on attributes of said controls overlying said each of said columns and rows;
said step of designating includes cumulating a total score by adding a value associated with each of said attributes with each control in a given column or row contributing its respective value to the total score for the respective column or row, said column or row being designated as resizable based on the total score for said column or row.
-
-
22. A method in an operating system for dynamically resizing an operating system interface element containing controls, the controls being defined by control definitions stored in a memory, the control definitions indicating whether the control is resizable, the method comprising the steps of:
-
receiving a command to resize said interface element from a user;
responsively to the step of receiving, dynamically defining resizable regions of said interface element, wherein the resizability of the region is based on the resizability of the controls that are at least partially within the region, and resizing said interface element responsively to the step of defining, whereby the interface element is resized by resizing said resizable regions of said interface element.
-
-
23. A method in an operating system for dynamically resizing a dialogue box of a graphical user interface without altering operating system code, said dialogue box containing controls, the controls being defined by properties indicating respective positions of each of the controls within said dialogue box and control-type data indicating respective types of each of said controls stored in a memory, the method comprising the steps of:
-
receiving a command to resize the dialogue box, identifying for each control whether the control is resizable based on the control type, responsively to the step of receiving, dividing the dialogue box into subareas, responsively to the step of dividing, dynamically determining whether the subareas are resizable based on the resizability of the controls that are at least partially in the subareas; and
resizing the dialogue box by resizing the resizable subareas of the dialogue box.
-
Specification