WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
System for interactively creating action bar pull-down windows of a user interface for use at program run time    
United States Patent5121477   
Link to this pagehttp://www.wikipatents.com/5121477.html
Inventor(s)Koopmans; Sytze T. (EZ Alphen an der Rijn, NL); Watson; Susan L. C. (Round Rock, TX)
AbstractCustomized screens are generated in accordance with the invention for interfacing with an application program in an information processing system. During a panel definition phase when a panel designer creates a customized panel, panel actions are selected from a default list of panel operations and commands, including searching, adding, changing or deleting data from a database, showing long fields, blanking out a panel, displaying a prior panel, and printing. The actions are specified in a pop-up window during panel definition. Mnemonics and function keys may be specified for each action. The invention dynamically creates pull-down windows based on the actions specified which become part of the panel interface available to the run time user from an application action bar. Users may select actions to interact with the panel in like manner to interaction with other portions of the application user interface by means of cursor selection, input of the action number, mnemonics, or activation of a function key. Also during panel design a custom word or phrase for the panel action may be specified for subsequent display in the pull-down windows during run time. A mode such as Add data or Change data is specified for each selected panel action item during panel definition. During panel run time, and after selection of an execution mode, panel actions pull-down windows previously thereby designed may be displayed. A list of only those panel actions previously selected in the panel actions design pop-up window corresponding to the execution mode selected appears.



 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History
Inventor     Koopmans; Sytze T. (EZ Alphen an der Rijn, NL); Watson; Susan L. C. (Round Rock, TX)
Owner/Assignee     International Business Machines Inc. (Armonk, NY)
Patent assignment
All assignments
Publication Date     June 9, 1992
Application Number     07/179,468
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     April 8, 1988
US Classification     715/762 715/804 715/826 715/827 715/975
Int'l Classification     G06F 003/03
Examiner     Lee; Thomas C.
Assistant Examiner     Coleman; Eric
Attorney/Law Firm     Salys; Casimer K. Carwell; Robert M. ,
Address
Parent Case    
Priority Data    
USPTO Field of Search     340/710 364/518 364/521 364/200 MS File 364/900 MS File
Patent Tags     interactively creating action bar pull-down windows user interface program run time
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
4945476
Bodick
600/301
Jul,1990

[0 after 0 votes]
4885704
Takagi
345/166
Dec,1989

[0 after 0 votes]
4870561
Love
700/87
Sep,1989

[0 after 0 votes]
4862390
Weiner
715/822
Aug,1989

[0 after 0 votes]
4845665
Heath
703/21
Jul,1989

[0 after 0 votes]
4835700
Tanaka
700/181
May,1989

[0 after 0 votes]
4807142
Agarwal
718/100
Feb,1989

[0 after 0 votes]
4805099
Huber
707/102
Feb,1989

[0 after 0 votes]
4791561
Huber
707/1
Dec,1988

[0 after 0 votes]
4789962
Berry
715/715
Dec,1988

[0 after 0 votes]
4772882
Mical
715/823
Sep,1988

[0 after 0 votes]
4763356
Day, Jr.
379/368
Aug,1988

[0 after 0 votes]
4761642
Huntzinger
715/806
Aug,1988

[0 after 0 votes]
4752889
Rappaport
706/11
Jun,1988

[0 after 0 votes]
4727473
Anderson
700/83
Feb,1988

[0 after 0 votes]
4723209
Hernandez

Feb,1988

[0 after 0 votes]
4700297
Hagel, Sr.
705/30
Oct,1987

[0 after 0 votes]
4688195
Thompson
706/11
Aug,1987

[0 after 0 votes]
4656603
Dunn
715/835
Apr,1987

[0 after 0 votes]
4648062
Johnson
715/708
Mar,1987

[0 after 0 votes]
4642790
Minshull
715/784
Feb,1987

[0 after 0 votes]
4611306
Crehan
715/810
Sep,1986

[0 after 0 votes]
4587520
Astle
345/160
May,1986

[0 after 0 votes]
4586158
Brandle
715/788
Apr,1986

[0 after 0 votes]
4555775
Pike
715/790
Nov,1985

[0 after 0 votes]
4531186
Knapman
707/5
Jul,1985

[0 after 0 votes]
4460975
Torkelsen
715/522
Jul,1984

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


I claim:

1. A computer implemented method for specifying a user interface to a database, comprising the steps of:

displaying, by a computer implementation, a customizing window for defining panels which are used during runtime by a user interacting with said database, which customizing window includes:

an action text prompt comprising a list of default or user specified descriptions each associated with a different run time panel action;

a panel actions prompt including a list of said panel actions each associated with at least one of a plurality of run time panel execution modes; and

a mode prompt including an indicator for each said run time panel action of its corresponding associated mode;

user selecting, in response to said displayed customizing window prompts, one or more of said descriptions and their associated run time panel actions and mode indicators;

user selecting, in response to said displayed customizing window prompts, one of said plurality of run time panel execution modes; and

displaying, by a computer implementation, in a second window a subset of the selections as related by said selected panel execution mode.

2. The method of claim 1 wherein said plurality of run time execution modes includes an add data mode and a change data mode.

3. The method of claim 2 wherein said one of said selected plurality of panel execution modes is selected from a group comprised of said add data mode, said change data mode, and a blank mode.

4. The method of claim 3 wherein each of said panel actions is selected from a group comprising panel operations and commands.

5. The method of claim 4 wherein said subset comprises a subset of said specified plurality of action texts, and wherein said panel execution mode for each of said action texts of said subset corresponds to said selected panel execution mode.

6. The method of claim 5 wherein said displayed customizing window further includes at least one panel action specifier prompt; and selecting at least one panel action specifier for a corresponding at least one of said selected plurality of panel actions.

7. The method of claim 6 wherein said at least one panel action specifier prompt comprises

a mnemonic prompt; and

an action key prompt; and wherein said at least one panel action specifier comprises a mnemonic and an action key.

8. The method of claim 7 further including displaying a set of preselected default values for at least one of said prompts; and selecting at least one of said default values from said displayed set of default values.

9. The method of claim 8 wherein said subset of responses includes said selected at least one panel action specifier.

10. The method of claim 9 wherein said second window is displayed during a panel execution.

11. The method of claim 10 wherein selected ones of said action texts and said panel action specifiers define a substantially identical relative spatial positioning and order when displayed in said first and said second windows.

12. The method of claim 11 further including

displaying in said customizing window a third window listing a plurality of said panel operations.

13. The method of claim 12 wherein at least one of said selected panel actions in one of said subsets corresponds to said change data execution mode and comprises a reset, print all, next, change, change and next, search, extended search, delete or next action.

14. The method of claim 12 wherein at least one of said selected panel actions in one of said subsets corresponds to said add data execution and comprises an add and next or previous action.

15. The method of claim 12 wherein at least one of said selected panel actions in one of said subsets corresponds to said blank panel action mode and comprises a print, blank panel, show field, or compute action.

16. A system for specifying a user interface, comprising:

means for displaying a customizing window for defining panels in said user interface which are used during run time, which customizing window includes:

an action text prompt comprising a list of default or user specified descriptions each associated with a different run time panel action,

a panel actions prompt including a list of said panel actions each associated with at least one of a plurality of run time panel execution modes, and

a mode prompt including an indicator for each said run time panel action of its corresponding associated mode;

means for selecting in said customizing window a set of responses to said prompts comprised or one or more text descriptions and their associated panel actions;

means for selecting through said customizing window one of a plurality of panel execution modes; and

means for displaying in a second window a subset of the selections as related by said selected panel execution mode.

17. The system of claim 16 further including

means for designating a plurality of panel actions in response to said displayed customizing window;

means for designating one of a plurality of panel action modes for each said selected panel action in response to said displayed customizing window; and

means for designating one of a plurality of action texts for each said selected panel action in response to said displayed customizing window; and wherein said plurality of panel action modes is functionally related to said plurality of panel execution modes.

18. The system of claim 17 wherein said means for displaying said customizing window includes means for displaying at least one panel action specifier prompt; and further includes means for selecting in response to said displayed customizing window at least one panel action specifier for a corresponding at least one selected plurality of panel actions.

19. The system of claim 18 wherein said means for selecting at least one panel action specifier comprises an action key.

20. A computer implemented method for defining a user interface to an application program comprising the steps of:

displaying, by a computer implementation, a first window;

user inputting in response to said first window a plurality of groups of panel-defining commands for defining panels in said user interface, each group including:

at least one panel operation or command; and

an execution mode for each said at least one panel operation or command;

user selecting a run time execution mode for said user interface; and

dynamically generating by computer implementation a plurality of second windows each said second window selectively combining a different set of said groups of panel-defining commands determined as a function of said run time execution mode.

21. The method of claim 20 wherein said groups of panel-defining commands in a given one of said second windows includes execution mode commands corresponding to said selected execution mode.

22. The method of claim 21 further including the step of storing said generated second windows as a portion of an object of said panel.

23. The method of claim 22 further including the steps of executing said selected panel; and

displaying one of said second windows during said execution of said selected panel.

24. The method of claim 23 wherein said execution mode for each said at least one panel operation or command is selected from a group comprising an add data rows mode and a change data rows mode.
 Description Submit all comments and votes
 


BACKGROUND ART

This invention relates to user interfaces adapted for use with information processing systems, and, more particularly, relates to systems and methods for generating customized screens for interfacing with said systems.

With the widespread adoption and use of computerized information processing systems has come a correspondingly large and diverse number of application program software for satisfying the needs of various users of such systems. However, notwithstanding such an increase in the variety and availability of excellent application software, due to such diverse needs, which can often times becomes quite specialized, a need arose for software products which could be readily adapted and customized by the end users as required to suit their particular environment and application.

As but one simple example, it has become quite conventional to allow for the custom configuring of various software products by the user through menu driven system configuration options at the front end of the application programs. A typical example of this may be seen in the communication software support programs for modems such as the products commercially offered by Hayes Microcomputer Products, Inc. In such a product, for example, in the initial boot up of the system it is commonplace to encounter a "Change System Configuration" menu whereby through user interaction, a system may be easily reconfigured and adapted for various printer interface cards, options specifying whether line feeds are needed, number of disk drives used, expansion slot number wherein the printer interface card resides, ability to specify various baud rates, and the like.

While such systems did provide for limited adaptability and customizing of software to the particular needs of the end user, they nevertheless still suffered from an inherent disadvantage. The variations and ways in which an end user could interface with the software product to specify these variations were themselves, predetermined by the software programmer, and thus relatively fixed in the product. This limitation, -in turn, gave rise to the emergence of various software products which could give the end users themselves some control over tailor making or customizing the user interface to the functions of the application program. Thus, it became highly desirable to provide end users with the additional capability of making adjustments for the software to their particular application.

For example, in the field of relational database systems, heretofore the end user of such systems was stuck with the content and manner of interaction of the user with various pull-down or pop-up windows in the interface for interacting with the database. More particularly, end users had no control over the variety and the manners of ways items could be selected from a window, the way such action items were described (such as "print customer order", "search invoices", etc.) they simply had to rely on the application designer's knowledge of their particular business and needs in attempting to provide an application program of maximum utility to an ever-growing number of end users with widely divergent requirements. The invention addresses the problem of mutually inconsistent goals in designing an application for a potentially large installed base while at the same time taking into account the need of end users not skilled in programming to customize features in a simple, efficient way.

Continuing with the relational database system example, with the advent of this need for end user customization, techniques became available for affording various degrees of such customization of screens for data viewing and entry. Examples of such products in the relational database art providing for various degrees of user interface customization include the following products followed immediately by their respective commercial sources: PC/FOCUS, Information Builders, Inc.; Paradox, ANSA Software; dBaseIII.sup.+, Ashton-Tate; and Oracle, Oracle Corporation.

Notwithstanding the aforementioned increased availability of products with end user customization capability, a serious problem nevertheless still remained. Very typically at some point in the customization steps in the software, programming knowledge and skills were required to complete the software customization, including detailed knowledge of programming language syntax and semantics, and the like. It should be readily apparent that this requirement was inconsistent with the capabilities of many end users and the need to provide for versatile user interface customizing by an end user with neither the time, money nor inclination to bring programming skills to bear in order to enjoy the benefits of such customization. In other words, complete customization has generally required programming expertise in generation of applications using program language statements.

Moreover the run time user of the application, who is often times different from the user interface designer in the past, knows the application's interaction techniques including such things as application action bars and action pull-down windows. It was thus also highly desirable to provide a tool to a run time user for design and modification of a user interface (including panel action/operations) in a format and using interaction techniques already familiar to the user through running the application. In this manner, the user would be less intimidated by the custom design and modification process as well as the interface panels and the like themselves and thus could become productive sooner.

With the foregoing in mind, it would be highly desirable to provide for end user design of panels for example to create customized screens for data viewing and entry which might be manipulated by the end users in the same way that they interact with other portions of the product such as the familiar application action bar. Still further, the desired product would permit the panel designer to fully customize an action pull-down window which would appear on the application action bar when running panels. It would also be highly desirable to provide for a system and method for user interface definition wherein the panel designer could create the application by specifying a series of panels and menus created essentially by filling in pop-up windows customized, and wherein such creation is in an interactive session with the interface but without the heretofore noted drawback of required specific programming skills. It would further be highly desirable to provide such techniques for user interface definition wherein the panel actions feature provided a panel designer with the means to assign at will not only the text of action items with which the user would select functions but the manner in which this was accomplished by way of varying mnemonics, function keys to each action, and the like. These and other novel features of the present invention are hereinafter described in greater detail.

SUMMARY OF THE INVENTION

A user interface with system and method for specifying same. During a panel definition phase, a panel actions pop-up window is displayed with a plurality of prompts for specifying the form, content and function of a subsequent pull down window which becomes part of a panel interface to a specified application program which is available to the run time user by interaction with an application action bar. In a preferred embodiment, the panel action-defining or first window, for use in creating a customized panel, includes as prompts a plurality of columns captioned Action text, Mnemonic, Action key, Panel operation/command, and Mode with a set of default actions displayed for each such column. The panel designer may use the presented defaults, may change or delete any or all of them, and may add new ones as the application requires.

The panel actions are used during panel execution to manipulate the panel, and are based upon a set of panel operations and/or commands whereby the user may combine operations and commands to tailor the set of actions for a desired panel. The panel designer in accordance with the invention will select which panel operations will be available to the panel and the user during execution by means of interaction with this first window. If a default definition option is selected for panel definition, the panel end user is provided in the first window with a pre-defined set of panel actions which may be selected from and customized as desired. Alternatively, the designer may input other panel actions. With respect to each panel action specified in the first window, an Add or Change mode of operation may be associated therewith and also specified in the first window.

During the run time mode of execution, the user may specify whether the Add or Change mode of execution is desired or it may be automatically pre-specified as a function of a particular panel to be run. In either event, second panel action windows may then be displayed whose content will be a function of the particular panel being selected for execution, the content selected or specified by means of the first window, and the mode of execution specified. One set of available panel actions will thus be displayed in one of the second panel actions display windows corresponding to panel actions in the first window designated by the "Mode" prompt as being an Add-type action. A second set of panel actions will be displayed in an alternate second panel action design window corresponding to panel actions in the first window designated by the "Mode" prompt as being Change-type actions.

Valid panel operations only if an "Add data rows" operation has been pre-specified in the first window prior to display of a second window include "Add and next" and "Previous". Valid panel operations only if "Change data rows" has been pre-specified prior to display of a second display window include Reset, Print All, Next, Change, Change and Next, Search, Extended Search and Delete and Next.

In lieu of an Add or Change panel operation, the panel designer may specify a command which is used to execute other objects in the application program which can be previously specified and saved by the designer, an example of which is a command to run a database query object. With respect to each aforementioned column caption or prompt in the definition window for prompting user input to define and design the panel, their use is as follows. First, in the panel operation/command column one or more such operations or commands are entered in the column from the pre-selected default list or otherwise. For each such operation or command entered, a panel designer inserts an indicator in a corresponding location in the Mode column or accepts a displayed default mode "Add data" or "Change data" corresponding to the type of operation or command. Also in the first display window, the panel designer provides in the action key and mnemonic columns corresponding indicators of action keys or mnemonic devices, respectively, desired for use with the second window in selecting panel operations or commands displayed therein for execution during application run time. Finally, in the " Action text" prompt for entries into that column, the designer may input text corresponding to and for use in selecting a particular panel operation/command, with such text appearing in the second windows and preferably employing terminology more familiar to the end user of the panel. When the designer has thereby completed the panel definition, the panel is saved as a panel object in the database. The application then converts the information just input from the panel actions definition windows into two dynamic pull-down window formats, one for add data rows mode and one for change data rows mode, and also saves them as part of the panel object.

The panel actions feature of the invention provides the panel designer with means to assign mnemonics and function keys to each action. The mnemonic is a character in the action text that is highlighted in the resultant second pull-down windows and can be used to select the action by the run time user. The function key is displayed in the resultant pull-down window. The run time user views the function key assignment when the customized pull-down window is displayed. The function key is active outside of the pull-down window and can be activated to invoke the action to which it is correlative and visually associated in the pull-down window as a fast path to selecting action from the pull-down window. The order of actions in the pull-down window is determined by the order specified by the panel designer when the panel is defined. The action text is variable to the panel designer who can specify text corresponding to application program actions which is oriented to the run time user and thereby can contain special terms or be in the user's national language.

BRIEF DESCRIPTION OF THE DRAWINGS

The novel features believed to be characteristic of the invention are set forth in the appended claims. The invention itself, however, as well as other features and advantages thereof, will be best understood by reference to the following description of the preferred embodiment, when read in conjunction with the accompanying figures, wherein:

FIGS. 1-7 are illustrations of a screen sequence generated in accordance with the invention in defining panel actions windows.

FIGS. 8-10 are flow diagrams of a computerized process for defining panel action windows in the manner of the invention and generating the screen sequence of FIGS. 1-7.

FIG. 11 is a flow diagram of a computerized process for execution of panels in an application program wherein panel action windows of the invention are desired to appear.

FIG. 12 is an illustration of the structure of tables in a database used in an example to illustrate operation and features of the invention.

FIGS. 13-30 are illustrations of a screen sequence generated in accordance with the invention in an example to define an ENROLL panel including panel actions windows.

FIGS. 31-37 are illustrations of a screen sequence generated in accordance with the invention in an example to define a COURSE SCHEDULE including panel actions windows.

FIGS 38-44 are illustrations of a screen sequence generated in accordance with the invention in an example to define a CLASS INFORMATION panel including panel actions windows.

FIGS. 45-50 are illustrations of a screen sequence generated in accordance with the invention for running the COURSE SCHEDULE panel in an example for adding and defining course information.

FIGS. 51-54 are illustrations of a screen sequence generated in accordance with the invention for running the COURSE SCHEDULE panel in an example for updating, searching and changing the COURSE SCHEDULE.

FIGS. 58-62 are illustrations of a screen sequence generated in accordance with the invention for running the ENROLL panel in an example including a computed fill-in command specified as a panel action in defining panel action windows for the ENROLL panel.

FIGS. 63-67 are illustrations of a screen sequence generated in accordance with the invention