CA1313418C - User interface with system and method for specifying same - Google Patents

User interface with system and method for specifying same

Info

Publication number
CA1313418C
CA1313418C CA000593249A CA593249A CA1313418C CA 1313418 C CA1313418 C CA 1313418C CA 000593249 A CA000593249 A CA 000593249A CA 593249 A CA593249 A CA 593249A CA 1313418 C CA1313418 C CA 1313418C
Authority
CA
Canada
Prior art keywords
panel
action
actions
window
specifying
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CA000593249A
Other languages
French (fr)
Inventor
Sytze T. Koopmans
Susan L. C. Watson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of CA1313418C publication Critical patent/CA1313418C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0489Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using dedicated keyboard keys or combinations thereof
    • G06F3/04895Guidance during keyboard input operation, e.g. prompting
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S715/00Data processing: presentation processing of document, operator interface processing, and screen saver display processing
    • Y10S715/975Pop-up dialog box for entry

Abstract

USER INTERFACE WITH SYSTEM AND METHOD FOR
SPECIFYING SAME

Abstract Customized 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.

Description

-- 11 3~3~ $

Descr.Lption USER INTERFACE_WITH SYSTEM_AND METHOD FOR
SPECI Y NG SAME

Backqround Art This invention relates to user interfaces adapted or use with information processing systems, an~, more particularly, relates to systems and methods for generatiny customiz~d 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 appli.cation program software for satisfying the needs of various users of such systems.
However, notwithstanding ~uch an increase in the variety and availability of excell.ent application software, due to such diverse needs, which can often times becomes ~uite 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 exa~ple of this may be seen in the communication software support programs for modems such as the products commercially offered by Hayes Microcomputer Product~, Inc. In such a product, for example, in the initial boot up of the system it i.s commonplace to encounter a "Change System Configuration" menu whereby through user interaction, a system may bs easi.ly reconfigured and adapted for ~ -0~9 ~ 3 ~

various printer int~rface cards, optlons specifying whether line feeds are needed, numbe:r of disk drives used, expansion slot number wherein the printer in~erface card resides, ability to specify various baud rates, and the like.
Whilc such systems did proviae for li.m,ited adaptability and customi~ing of software to the particular needs of the end user, they nevertheless still suffered from an inherent disadvan~age. The varia-tions and ways in which an end user could inter-face 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 ~he addi-tional capability of making adjustments for thesoftware 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 select-ed from a window, the way such action items were described (such as "print customer order", "search invoices", etc.~ they simply had to rely on t~e application designer's knowledge of their particular business and needs in attempting to provide an appli-cation program of maximum utility to an ever-growing number of end users with widely divergent ,--0 7 9 ~3~3~

requirements. The invention addresses the problem of mutually inconsistent goals in designing an appl,ca-tion for a potentially large installed base while at the same time taking into account the need of end users not skilled in programming to customlze 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 afford-ing various degrees of such customization of screensfor data viewing and entry. E~xalnples of such products in the relational database art provlding for various degrees of user interface customization include the following products followed immediately by their respective commercial sources: PC/FOCVS, Information Builders, Inc.; Paradox, ANSA Software; dBaseIII , Ashton-Tate; and Oracle, Oracle Corporation.
Notwithstanding the aforementioned increased availability of products with end user customization capability, a serious problem nevertheless still remained. ~ery typically at some point in the customization steps in the software, programming knowledge and skills were required to complete the software customization, including detailed Xnowledge of programming language syntax and semantics, and the like. It should be readily apparent that this re-quirement was inconsistent with the capa~ilities 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 customi~ation. In other words, complete customization has generally required programminy expertise in generat.ion of applications usir.g program language statemer.ts.

~ 7-G29 ~3~3~

Moreover the run ti~e user of the application, who is often times different from the user interface designer in the past, knows the application's interac-tion techniques including such things as application action bars and action pull-down windows. It was thus also highly desirabl~ to provide a tool to a r~n time user for design and moaification OL a user interface ~including panel action/operaticns) 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 b~ the custom design and modification process as well as the inter~
face 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 desi~ner 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 drawbac~ of required specific programmin5 skills. It would further be hi~hly desirable to provide such techniques for user interface definition w~lerein the p~nel actions feature provided a ~ 02~
~3~ ~

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 ea~Lures OI the pre~ent invention are hereinaf-ter described in grea~ei- deiail.

Disclosure of the Invention . .
A user interface with sys~.em and method for specifying same. During a panel definition phase, a panel actions pop-up window is displayed with a plurality oi 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-defini-lg 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 eaGh such column. The panel designer may use the presented defaults, may change or Z5 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 ~ith the invention will select which panel operations will be available to the panel and the user - du-ring execution by me2ns of interac'ion with this firs~ wii.dow. If a ~e~ault def.nition opt or. is ~ 3~3~3 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 fir~t window, an Add or Change mode of operation may be associated therewith and also speciied 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 partic~llar panel to be r~ln. In either event, second panel actlon windows may then be displayed whose content will be a function of the particular panel being selected for execution, the content selected or speciied by msans of the first window, and the mode of execution specified. One set of available panel actions will *hus 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 action~ will be displayed in an alternate second panel action design window corresponding to panel actions in the first window designatad by the "Mode"
prompt as being Change-type actions.
Valid panel operations only if an "Add data rows"
operation has been pre-specifie~ in the first window prior to display of a second window inclllde "Add and next" and "Previous". Valid panel operatiolls 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 Ne~t.

~3~3~ ~ ~

AT~-87-029 7 In lieu of an Add or Change panel operation, the panel designer may specify a command which is used to execute other objects ln 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 co]umn caption or prompt in the definition window for prompting user input to define and design the panel, their use is a.~ follows. First, in the panel operation/command column one or more such operations or commands are entered in the colllmn from the pre-selected default list or otherwise. For each such operatlon or command entered, a paneJ. desicJner inserts an indicator in a corresponding ].ocation in the Mode column or accepts a displayed default mode "Add data" or "Change data"
corre~ponding 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 exec~ltion during application run time. Finally, in the "Action text" prompt for entries into that column, the designer may inpllt text corresponding ko and for use in select:ing a particular panel operation/command~ with such text appearing in the second windows and preferab]y employing ~.erminology more familiar to the end user of the panel. Whell the designer has thereby completed the panel definitior~ the panel is saved as a panel object in the database. The application then converts the information just inp~rt ~rom the panel actions definition windows into two dynamic pull-dowtl window formats, one for ad~ data rows mode and one for .

~ 3 ~

change data rows mode, and also saves them as part of the panel object.
The panel actions feature of the invention provides the panel desiqner 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 vlews the function key assignment when the customized pull-down window is di~played. The function )cey is active outside of the pull-down window and can be ac:tivated to i.nvoke the acti.on to which it is correla-tive and vi.sua].ly 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 i.s defined. The action text is variable to the panel deæigner 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.

Brie DescriPtion of_The Drawings The novel features believed to be characteristic of the invention are set forth in t:he appended claims. The invention itself, however~ as well as other features and advantages thereof, will be best utlderstood by reference to the following d0scription of the preferred embodiment, when read in conjunction with the accompanyi.ng figures, wherain:
Figs. 1-7 are illustrations of a screen sequence generated in accordance with the invention in deining panel actions windows.

,¢~ ~s~

~3~ 3~

Figs. 8-10 are flow diagrams o~ a computerized process for defining panel action windows in the manner of the invention and generating the screen sequence of Figs. 1-7.
Fig. ll is a flow diagram of a computerized process for execution of panels in an applicat~on program wherein panel action windows of the invention are desired to app~ar.
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.
Fig3. 13-30 are i.llustra-tions of a screen sequence generated in accordance with -the invention in an example to define an ENROLL, panel incLudinc3 pctnel actions windowf~.
Figs. 31-37 are illustratiolls oE a screen sequence generated in accordance with the invention in an example to define a COURSE SCHEDULE inclllding panel actions windows.
Figs. 38-44 are illustrations of a screen sequence generated in accordance with the inven-tion in an example to define a CLASS INFORMATION panel including panel actions windows.
Figs. 45-50 are illustratio17s o~ a screen sequence generated in accordance witll the inventi.on for running the COURSE SCHEDULE panel ill an example for adding and defining course information.
Figs. 51-54 are illustratiol~s of a screen sequence generated in accordance with the inven-tio!l for running the COURSE SCHEDULE panel in an ex~mp]e for updating, searching and changing the COURSE SCHE~U[,E.
Figs. 58-62 are illustrations of a screen sequence generated in accordance with the inventioll for running the ENROLL panel in an example including a '1~ "1~

~3i~

AT9-87-029 ~0 computed fill-in command specified as a panel action in d~fining panel acti.on windows for the ENROLL panel.
Figs. 63-67 are illustrations of a screen sequence generated in accordance with the invention for running the CLASS INFORMATION panel in an example including a Run Class Information automatic command specified in defining panel action windows for the CLASS INFORMATION panel.
Fig. 68 is a functional block diagram of a computerized system for implementing the user intarface and system and methods of the present invention hereinbefore described with reference to Figs. 1-67.

Best Mode for Carryin,g, Out the Invention PANEL VEFINITION
In order to provide a clear ullder6tand of the subject invention, first a generalized sequence of screens will ~e discussed generated in accordance therewith with reference to Figs. 1-7. This will then be fo].lowed by a discussion of a flow diagram with reference to Figs. 8-10 for d~fining panels and panal action windows. Mext~ Fig. 11 will be discussed to provide a clearer ullderstanding of the use of the panel and panel action pull-down windows generated by the invention in accordance wit.h tlle process depicted in Figs. 8-10 during panel e~ecution. With reference to Figs.
12-67, several actual examples of screen sequences will be discussed with reference to spec;fic examples wherein panels and panel action window pOp-Up9 are de1ned in accordance with the invention and used durillg various panel executions.
Finally a functional block diagram of the system will be discussed referencing Fig. 68.
Referring first to Figs. 1-7, a very brief overall discussion of the ~equence of specifying panel ~,.~

~3~3~

AT9-87-029 ~ 1 action windows in the manner of the i.nvention will be given. In accordance with the invention, in Fig. 8 a computerized process will be ~ni.tiated at 10 whereupon desired actions required for a given panel to be defined will be specified, 12. This is followed by selecting (means of a cursor, user input of the numeral 4, mouse, or the like) of the "panel actions", 14, of Fig. 1 (corresponding to step 16 of Fig. 8 in the panel definiti.on flow diagram).
This action results in appearance o a panel action 9 pop-up window with default values as .shown in Fig. 2 and indicated at step 18 of Fig. 8.
Several things may be noted by this first appearance of the panel action s pOp-Up window 20 which overlays a preexisting panel definition window 22. It will be noted that the "Specify" pull~down wi.ndow depicted in Fig. 1 was itself called to the screen by selecting the "Specify"
selection in the application action bar 24 (by any means well known in the art such as a mouse, cursor, etc.~.
Continuing with Fig. 2, the title 24 for the panel preferably appears in the underlyincJ window. In the preferred embodiment immediatel.y at the appearance of the Fig. 2 screen the panel desi.gner ]s presented with a set of default actions defined with prompts or action text 26, mnemonics 28, action keys 30~ panel operations/commands 32 and modes 34.
It is contemplated by the invention to enable the panel designer to have a plurality of ways to activate operation of panel actions by interacting with a subsequent panel actions pull-down. These inclllde keying in a mnemonic letter highlighted in action text or selecting an action key associated with the desired operation as displayed in the pull-down window. Pro~pts such as 28 and 30 (Fig. 2) for prompting the ' ~

~3~3~ ~

user to specify in the panel design window the actions to be used in the pull-down for selecting a corresponding operation will be collectively known as panel action speci~ier prompts. The means of selection (keyed mnemonic, action key, etc.) are general].y the panel action specifier~.
Although only mnemonic and action key specifiers are shown i.n the embodiment of Fig. 2 as designer selectable, the invention admits of any number and type of such specifiers as desired and is not intended 1o he lim.lted to mnemonics or action keys.
Under each such prompt 2~034 prev.to~lsly l.isted appears a co].umn of correlati.ve s~lggest:ed default~. The panel designer may use the defaults presented, may change or delete any or all of them, and may add new ones. Action text under the action text prompt 26 preferably will be selected in terminology familiar with the end user of the panel. Mnemonics under the mnemonic prompt 2~ will be selected which in one embodiment is a letter appearing in the action text. On the display, the intensity of this letter will be highlightçd where .i.t appears in the action text in the panel actions pop-up window being customi~ed when the pop-up window later appee~rs in use in the product.
Action keys are suggested in the default window under the action key prompt 30 so as to be con,e3i.stent with action keys in other parts of the product, ~llt may be changed as needed during the panel design process pr.esently under discussion.
Wi.th reference to panel operation/command prompt 32, items shown therellnder are hereill referred to as panel actions which are used during pane]. execution to manipulate the panel. They are based on a set of panel operations and/or commands relating to the database. The user can command the operations and ~3:~3~3 commands to tailor the set of actions for the panel. In other words, the panel designer will choose what panel operations will be available to the panel end user during execution. As shown in Fig. 2 if the deault definition option is chosen for panel definition, the pa~el end user is given a pr~-defined set of panel actions depicted therein which can be customized if desired.
The particular "Actions" pop-down window presently being defined which appears later during panel execution depend~ on which mode of executioll is chosen (i.e., Add or Change). Panel operations are defined in t,erms of panel in~tances and panel set,. The validity o each panel operatlon and i.n some si.tuations tlle manner o.~ execution is determined by the run time mode of execution as aforesaid (Add or Change). Examples of valid operations for both execution options will be hereinafter listed followed by operations valid only for each mode of execution:

Valid Panel operation~ for both Add_and Chanqe Print - Prints the current panel instance Blank panel - Presents a pane]. lnstance with all data and computed fields nu].l.
Show field - Displays a pop-up window where the user may completely display and/or Change or Add data to the field which has been specifled ~s being lon~er than the available space on the panel - Compute - Causes comp~lted fiel~s ~o be calculated and displayed on a current panel instance.

Valid Panel Operations-onlv for "Add Data Rows"
Add and Next - Performs an addition to the data~ase to add the row or repeated rows speci~ied on the panel.

..

~31~ .3 Previous - Presents the prevlous panel instance that was just added. After executing the "Add and Next" action, a blank panel is automatical]y presented to the end user for more additions.

Valid Panel Operations_Only for "Chanqe_Data Rows"
Reset - Returns the current panel instance to its condition at the time of the last database action.
Print All - Prints all the panel ins-tances in the panel set.
Next - Presents the nex-t pane]. instance in the panel set.
Change - Performs a chanc~e to any of the inpu-t data fields changed by the user in the displayed panel instance.
Change and Next - Perform~ an update -to the database to update the rows changed on thi.s panel instance.
Search - Presents the first panel instance in the panel set which satisfies a search condition as determined by the data values input by the panel end ~Iser on the panel.
Extended Search - Pop-up window js presented allowing more knowledgeable end users to specify more extensive search conditions.
Delete and Next -- If screen c~lrsol is positioned on a repeated row, this action appl.ies nnly to that row and that row alone will be deleted rom the database. If the cursor iæ not on a repeated row, the row ln the root table represented on the current panel instance will be deleted.

In addition to the panel operations j~st described such as those indicated at reference n~lmeral 36 (i.e., the preset instructions that are defined by ~r ~3~3~

AT9-87-Q29 l5 the particular application~, a designer ~nay specify a command in the prompt 32 coll.1mn in place of an operakion.
Commands are used to execute other objects in the application which can be created and saved by the designer.
An example of a command is a Run Qllery "query name" where "query name" is the name of a query object created by the designer. The query may re~uest certain data be retrieved from the database and formatted as a report. An alternate example of a command which may be selected from the default list in Fig. 2 or otherwtse spec~ied and inserted by the de~igner .i~ the comp-1te command 3~ whi.c1~ will cause computed fields to be ef~ected .tf thi~ pane]. act.i.on ls selected in the panel action pOp-Up wlndow presently being defined.
Returning to Fig. 8 it wi1.1. be noted that step 40 corresponds in the flow diagram to entering the desired action text in the column 26. Step 42 corresponds to entering the desired letter mnemonic in column 28. If an action key is also desired for providing the user an additional manner for selecting action text in a subsequent panel action pop-up window, either -the default listed action keys in the column are spec:ifiec1, ~6, (by a device such as a cursor or mouse), or, if no s~lch key i.s desired, the process exits at 42.
Continuing with Fig. 9, .i.f the panel action currently being specified ln the coll1mn 3~ o~ Fig. 2 is not a panel operation, i.e., i.t is a command, ~ny des.ired command string is entered as shown at st.ep 5~ (s~1ch as a query in the particular query language of the app].ication program which may be a prompted query, SQL statement well known in the art, or the like). If on the other hand, a panel operation is desired as shown by the Yes path out of block 50, the process ~,r ..,~.

~3~3~ ~

will check whether a prompt 11st is desired by the user listing all possible operations o~ the system as shown at block 54. If no li6t i9 desired, the user inputs a selected operation, 56. However, if an operations list is desired, it is displayed and the operator chooses a desired operation frotn the list, 58. With reference to Fig. 3, the panel actiQns pop-up window currently being designed is shown with such a panel operations list window 60 displayed. The panel designer could request such a .list of all available panel operati.ons by pressing a function key such a~ F4=List key.
A cursor 62 may then be pl.aced in the fiel.d for a panel operation. When the desi~ller selects an operatlon from the displayed li~t, the list window i~ removed and the selected operation is inserted in the field where the cursor 64 i9 pre~ent in the last panel operation field. It will be evident that since the panel act.ions pop-up 20 is initially displayed with defaults including panel operations filled in, the designer would not typically use the operations list 60 function at this point. After changes are made to the panel actions such as deleting some panel actions, however, it is generally foulld more useful -to use the List function to show all pos~ible panel operations.
Referr1ng back to Fig. 2, it will be recalled that a mode prompt 34 is provided an~ tllat vali.d panel operations are a functi.on of the type or mode of action and can have one of two values, either "A" for "Add data rows", 66, or "C" for "Change data rows", 68. If the tnode 34 field is left empty, then the mode of executi.on can be both "A" and "C" for that panel operation. At panel execution, the actions will be in the sequence they are specified in.
Those actions valid for Add will be present in the Add mode in a ~ 3 ~

subseguent panel actions pop-up window, and ~hose actions valid for "Change" will be present in the "Change" mode.
This, then, explains the significance of the user entries into the mode prompt 34 column.
Thus, returning to Fig. 9, at 70 the process requires definition of whether the pane] action selected in the panel operation/command column 32 and corresponding action text 26 is Xor an "Add data" action. If Yes, a mode entry "A" is entered, 72. If the ~pecified panel action is for a "Change data rows", 74, a "C" is entered at the appropriate location in the mode prompt column 34 as shown by step 76 in Fig. 9.
If the panel action mode of execution can be both for adding and changing data, the appropriate mode location is left blank as shown at step 78.
Referring to ~ig. 10, the proces~ steps previously described with reference to ~igs. 8--9 are then repeated if it is desired to specify yet additional panel actions shown ~t step 80, whereupon the process loops back to 82 of Fig.
8. If, however, no more actions are desired to be specified, the designer has thus modified the fîelds in the window of Fig. 4 to contain all the actions needed or the panel. It will be noted at 82 that the action text for "Update balance" has a correlative command 82 instead of a panel operation entered in the pane]. operation/command column. In the embodiment being di.scussed, an action may have one command or one ~peration ~Ithollgh the invention is not intended to b0 so limited.
When the designer complete.q the panel definition, it is determined at 84 whether it i 6 desirable to save the definition. If Yes~ the panel is saved as a panel object in the database in internal ormat, 86 and the process ends, 88; and, if No the process ends witho~lt such saving at 38.
The invention, in part, converts ~,~
J.

:~3~3~

,, C ., the information from the panel actions window Fig. 4 as ~}IUS specified in accordance with the previously described steps into two dynamic pull-down window formats (one for "Add data rows" mode and one for "Change data rows" mode and saves them as part of the panel object.
PAN~L EXECUTIGN
Now that the panel actions pop-up window has been filled in and the just-mentioned pull-down panel action windows resultant therefrom are specified, a general description wlll now be given as to how such subsequent ~anel ackion pull-down windows come into play in use o; an application and the user interface.
With reference to a panel eY.ecution flow diagram Fig.
11 and accompanying illustrative screens shown in Figs. 5-7, the panel execution process begins at 84.
"Panels" will be chosen from a main selection window, step 86, whereupon the name OL a panel to be executed from the list of all panel definitions is selectedt 88. By selecting "Run" from an appropriate actions pull-down on an application action bar, 90, a panel with blank fields will appear in accordance with step 92. With respect to the hereinbefore noted example (with reference to Figs. 1-4), what this means is that the panel "order form" would be selected rom the list of panels defined in accordance with Figs. 1-4 and 8-10, and after selecting "Run" the panel execution window of Fig. 5 would appear. It will be noted that fields on the panel are displayed as blank. The cursor is shown as an underline in the first field, g4. When the user requests to execute or run a panel by first selecting the "Actions", 96, on the applica-tion bar, and step 98, a prompt is given at step 100 requesting user indication of the desired execution :L3~ 3~3 AT9-87-02g :1.9 mode (i.e., whether the pane} w:ill be run in an "add data rows" mode or a "change data rows" mode).
The subsequent actions which can be takan in a correla-tive one of two pull-down panel action windows will hereinafter be determined by which mode i.s selected at this point by the user. Per step 102, if the "Change data rows"
mode is selected, step 102, the actions pull-down window for the "Change data rows" mode is displayed as shown in Fig. 6.
Conversely, if the "Add data rows" mode is selected at 100, the actions pul.l-down window for "Add data rows" mode shown in Fig. 7 i.s displayed. The data val.ues or the particu].ar panel of ~ig. 6 or 7 are thence :~illed in by the user. The action~ in the pull-dowll window (previously ~peciied ln terms of wording, mnemonics, se~ection of panel actions displayed therein, and control keys used for selection, and order per the panel definition flow diagram) are selected as shown at step 106, whereupon the process ends at 108.
Reerring to Fig. 6, a comparison of the actions pull-down window 110 with the panel actions window after changes have been made (Fig. 4~ will show that the window 110 contains only the actions æpecif.ied in the window of Fig. 4 as mode equal "C" or mode e~ual "blank" (which, it ~ will be recalled, refers to actions whicll may execute in j either the Add or Change data mode). Moreover, the actions are listed in the order of occurrence in the panel actions window during panel definition. Fur-thermore, the selected actions are automatically numbered by the invention so that selection by number would be availabLe as well as by cursor, mouse, mnemonic letter selection, and the various contxol keys. The first posslble action for the user to select appears at the top of the list indicated by the cursor 112 as a default. When the ~ C29 ~ 3 ~

user selec~s an action by the aforementioned method, the invention executes the selected panel operation or command previously defined in the panel actions window during panel definition with reference to Figs. 1-4.
Referring to Fig. 7 in greater detail, again comparison of the pull-down window 114 depisted therein with Fis. 4, reveals tha~ tlle actions con-tained in the window 114 are only those which were specified in Fig. 4 as mode-"A" or mode="blank".
Again, with reference to this pull-down window 114 as with window 110 of Fig. 6, interaction with the actions pull-down is identical. In other words, the user may select a listed action in one of five ways:
l. Moving the cursor over the action in the pull-down and pressing enter;
2. Using the mnemonic which is shown highlighted on monochrome displays and in a different color on color displa~s;
3. Using the function key if one has been assigned;
~. Using the number of the action in the action pull-down; and 5. Moving the mouse cursor on the action in the actions pull-down and clicking the mouse.
It will be noted that these interaction tech-niques are preferably iden~ical throughout the entire application under consideration.
From the foregoing, it will be apparent that the invention provides the means for the panel designer to customize an actions pull-down to meet the needs of the panel user and to make interaction with the pull-down window consistent with all other pull~down windows in the product.
E~AMPLES
:
~ 35 I ~ f' ~ U '` f~
~ 3 ~

Now that an overall description of the function and opera~ion of the invention has been given, appli-cation to a few specific examples will serve to further illustrate the significant unique features of the invention. In the examples under consideration, an educa.ion database will be used to build up a sample application -or -the invention. The structures of the tables in the database are depicted in Fig. 12 with the "-" indicating the fields in each table which form a unique key 'or the table whereby the relational data eontained therein may be interrelated.
In the example under consideration, panels and pull-down ~indo~Js will be created for use in an education application. In the application, various class schedules ~ill be specified and changed and an enrollment in a class will be shown by use of user interface screens generated in accordance ~lith the invention. In Fig. 13, there is a customized menu defined ~or the Education application. The items on the menu allow a user to review the education catalog, check the schedule of classes, enroll in a class, caneel enrollment and eheck enrollrnent status. The menu is pictured in Figure 1.

Each item on the menu is defined as a command in the product. The commands for the five items on the menu are:
1. RUN PANEL COURSE_DESCRIPTOR
2. RUN PANEL COURSE_SCHEDULE
3. RUN PANEL ENROLL (MODE-ADD) 4. RUN PANEL ENROLL ~MODE=CHANGE) 5. RUN PANEL CHECK_ENROLL

Three panels are constiucted: COURSE_SCilEDULE, ENROLL
and CI,A~S_INFO. Cl.ASS_INFO is a panel run froln ~ithin ~3~3~ ~ ~

the ENROLL panel. These panels and the Education application scenario that follows illustrate the use of the dynamic panel actions window.
First, the user creates a new panel named ENR~LL
(Fig. 1~). The panel is initially a blank screen with ~he cursor (shown as an undelscGre) in the upper left corner. Tne first step is to select the tables to be used in the panel (Fig. 15). 'ITable selections" in the Specify p~ down window is chosen. The Table Selections pop-up window appears (Fig. 16). No tables are initially filled in. The user is creating the ENROLL panel using the COURSE_ENROLL and EMPLOYEE
tables. These tables are filled in the Table Selec-tions pop-up (Fis. 17). Then the user must specify which fields from the selected tables are used in the ENROLL panel. "Table fields" in the Specify pull-down window is chosen (Fig. 18). The Table Fields pop-up window appears (Fig. l9). No table fields are ini-tially ~illed in. The user fills in the columns from the 2 tables in the Table Fields pop-up window and assigns a panels field name, usage and width to these fields (Fig. 20). The user indicates the columns which connect the two tables in this panel by using the "Connecting columns" action in the Specify 2~ pull-down (Fig. 21). The Connecting Columns pop-up window is displayed with no fields filled in (Fig.
22~. The user enters the connecting column informa-tion into the window (Fig. 23).
Ne~t the user keys in the fields and background text information into the panel definition window.
The field names from the Table Fields pop-up are used to mark the fields in the panel definition window.
Instructions can be added to the panel as appropriate for the intended user of the pa..el (Fig. 24!. The 3~ user defines the panel actions which can be performed 1 3 ~ 3 ~ ~ ~

on the panel by selecting the "Panel actions" in the Specify pull-down window (Fig. 25).
Default panel actions appear initially in the Panel Actions pop-up window. The mnemonic is a character which appears in the action text. The action key assigned as a default is consistent with similar functions available elsewhere in the produc-t. A]l the panel operations available are listed with the action text equal to the panel operation (Fig. 26).
The user can reword the ac-tion text, assign a different mnemonic or action key to tlle panel action or delete the panel action from this panel. Panel ac-tions can be added Which execute a product command ~such as Run Panel CLASS_INFO). The order that the actions will appear in the dynamic pull-down window is det:ermined by the order in the Panel Actions pop-up (Fig. 27).
As the final step in defining the ENROLL panel, the user gives the panel a title by choosing the "Title line"
action in the Specify pull-down window (Fig. 28). The Title Line pop-up window appears overlaying the panel definition (Fig. 29~. Finally, user fills in the title (Fig, 30).
Next two other panel~ are deEined. Screens showing the Specify pull-down windows and -the ini-tia] pop-up windows are omitted since they ara the same as in the previous sequence.
The user de~ines a 2nd panel named COURSE_SCHEDULE (Fig.
31). The COURSE_SCHEDULE panel uses the COURSE_CATALOG and CLASS_SCHEDULE tables (Fig. 32). The fields in the 2 tables which are used in the panel are filled into the Table Flelds pop-up window (Fig. 33). The columns connecting the root and sub tables are filled into the Connecting Columns pop-up window (Fig. 34). The COURSE SCHEDULE panel definition is created in the 1 3 i 3 ~L ~

definition window ~Fig. 35). The panel actions are specified in the Panel Actions pOp-llp window ~Fig. 36). The title is filled in the Title I.ine pO,p-tlp window (Fig. 37).
The user then defines a 3rd panel named CLASS_INEO
(Fi.g. 38). The CLASS_INFO panel uses the CLASS_SCHEDULE and COURSE_CATALOG tables (Fig. 39). The fields in the 2 tables which are used in the panel are fi]Led into the Table Fields pop-up window (Fig. 40). The columns connecting the root and lookupl tables are filled into the Connecting Columns pop-up window (Fig. 41). The CLASS INFO panel definition is created in the definition window (Fig. 42). The panel actions are specified in the Panel Actions pop-up window (Fig. 43). The title is fi.lled in the Title Llne pop-up window (Fig. 44).
To run the Education ~-pplication, the user starts with the menu. The class schedules are controlled by using item 2 on the menu (Fig. 45~. ~hen item 2 i.s selected from the menu, the product executes the command : RUN PANEL
COURSE_SCHEDULE. The product prompts the user for a mode (Add/Change) (Fig. 46). T'he user chooses mode 1: Add data rows. A blank COURSE_SCH~DULE panel .is displayed with the cursor in the first .input fie:ld. Course (Fig. 47). The user 'fills in the class schedule data for course # 8240 ~Fig.
48). Then the user goes to the action bar and selects Actions. The Actions pull-dowll ~s dynamically created based on the Panel Actions definitions for Add mode (Fig. 49).
The user picks the first Action, "Add sections". This action cause~ the panel operation defined for this action in the Panel Actions pop-up (Add and next) to be executed. Add causes the data rows to be added to the COURSE_SCHEDULE
table in the database. The ,.,~
'4 ~ 3 ~

panel is redisplayed with all fields blanked and a message which indicates that the data rows have been successfully added. The next keystroke catlses the message box to disappear (Fig. 50). If the user had chosen Change data rows in the Run panel mode pop-up, a blank COURSE_SCHEDULE
execution panel is displayed (Fig. 51).
To update the class schedules for course B240, the user fills in the course number (Fig. 52). The user goes to the action bar and selects the "Search" action from the Actions pull-down. The Actions puJl-down is dynamically created based on the Pane]. Actions definitlons for Change mode (Fig.
53). The database ~s .searched Eor rows that correspond to the class sched~lle for co~lrse 8~40 and these rows are displayed in the panel (Fig. 54). The user changes the class schedule (updates the start and end dates for section 8003 and 8004) (Fig. 55). The user goes to the action bar and selects the "Update sections" action from the Actions pull-down (Fig. 56).
The "Update ~ections" action causes the panel operation defined for this action in the Panel Actions pop-up ~Change and next) to be exect~ted. Change causes the data rows to be updated in the COURSR_SCHEDUr.E ta~le in the database. The panel is redi~played wi~h all fields blanked and a message which i~dicates that the data rows have been successfully updated. The next keystroke causes the message box to disappear (Fig. 57).
A second example using the Education application (Fig.
58) will now be provided. When ltem 3 is selected from the menu, the product executes the command : RUN PANEL ENROLL
(MODE=ADD). The mode is specified on the command, so the Run panel mode pOp-l~p is bypassed. A blank ENROLL panel is di~played ~Fig.

1 ~ ~ 3 ~ ~ ~

59~. The user fills in the required fields: course no, section, employee serial, VM llser ID and VM node (Fig. 60).
Next the user goes to the action bar and selects Actions. The Actions pull-down is dynamically created based on the Panel Actions definitions for Add mode. The "Fill in employee ~ata" action is chosen (Fig. 61~ The "Fill in employee data" action is defined as the Compute operation and causes any lookup ta~le fields to be filled in. The fields from the EMPLOYEE table are retrieved from the database for the employee whose serial number is 295017 and are displayed in the panel (~ig. 62). The user goes to the action bar, thi.s time chooslng the "Check cla~ lnfo" action (Fig. 63).
The action defined for "Check class info" is RUN PANEL
CLASS_INFO. The CLASS_INFO panel is displayed overlaying the ENROLL panel. Since there are no Add usage fields defined in the CLASS_INFO panel, it is only run in Change mode. The course and section are used as search arguments to generate the data (Fig. 64). The course abstract contains more information that can fit in the panel field.
The "Show course abstract" action executes the Show field operation which di.splays the entire Abstract field in a ccrollable pop-up window (Fig. 65). The user browses the panel and then exits, via the Exi.t action in the action bar, back to the ENROLL panel. The ~NROLr, panel is redisplayed (Fig. 66).
The user "enrolls" in the cl.ass by pressing Ctrl~F2, the function key assigned to the "Add and next" action.
This key is displayed to the user in the Actions pull-down ~indow. It can be pressed and take efect without going to the action bar and entering the Actions pull-down window (Fig. 67).

'~

~ 3 ~ 3 ~7 With reference to Fiy. 68, a block diagram is shown of a processing apparatus which may be used to run computer programs providing the previously described functions thereby implementing the system of the present invention. The system preferably takes the form of a typical personal computer architecture such as that embodied in the IBM~ Personal System/2~. With respect to this system 120, a microprocessor 308 is provided such as an IntellM 80286 or ~0386 device which is interconnacted to a desired selection of I/O devices 124, ROM 126, m~mory 128, and media 130 by means of a bus 310. It will be appreciated that in a conventional rnanner, the bus 310 will be comprised of address, command, and data lines for purposes well known in the art. The I/O devices 12~ which may be included in -the system 120 of the present invention may include a display such as an IBM Personal System Color Display 8510, a keyboard, mouse or the like for user input9 and a printer if desired. It will also be appreciated that for purposes of simplicity, adapters have been omitted from Fig. 68 although it will be appreciated that such adapters for the various devices 124-130 may either be included in part of the IBM Personal System/2 or available as plug in options from the IBM Corporation.
Within the read only memory or ROM 126, the basic input/output operating system or BIOS is stored for execution by the processor 122. The BIOS, as is well known, controls the fundamental operations of the computer system 120. Additionally, an operating system 132 is provided such as Operating System/2~ which will be loaded into memory 128 and will run in conjunction with the BIOS in ROM 126.
Additional information on the Personal System/2 and OS/2~ operating system which ma~ be used in a ~ AT~-87-029 13~3~

preferred embodiment to implement the system and method of the present invention may be found in the following reference manuals: IBM Operating System/2 Version 1.0 Standard Edi-tion Technical Reference, IBM Corporation, Part ~o. 68X2256, Order No. S68X-2256; OS/2 Programmer s Guide, Iacobucci, Ed~, McGraw Hill 1988;
and IBM Operating System/2 Extended Edition Version 1.0 Technical Reference Use Publication No. 90X7939.
In accordance with the invention, an application program 13~ is further provided which may be loaded into memory 128 or stored in media 130. This media 130 may be of any conventional form such as a hard fi~e, diskettes associated with a disk drive, or the like.
In accordance with OS/2, the data base application pro~ram 134 may be considered as an operating system 132 extension and will include numerous functions conventionally associated with a database program providing instructions to the processor 122 so as to enable the system 120 to perform relational database functions as hereinbefore described. The operator may interface with the database program through the various I/O devices 124, such interfacing including entering, accessing, changingS or deleting data from the database and other such tasks. for e~ample, the user may interact with the database program 134 by inputting some form of data manipulation language command such as an SQL command well known in the art via the keyboard, whereupon the system 120 will query the data resident in the database and output the desired answer set for inspection by the user on a video terminal, printer or the like.

~ G29 ' ~ 3 ~ 3 ~ ~ ~

It will be noted that software functions included in the database program 134 include panel definition functions ~36 and panel execution functions 138.
These functions, graphically and conceptually repre-sented in Fig. 68 as part of the database program 134,wiil be recognized as performing the hereinbeLore described functiolls of the present invention relativc to custom definition of a user interface in the manner of the invention.
~hile the invention has been shown and described with re erence to particular embodiments thereof, it will be understood by those skilled in the ~rt that the foregoing and other changes in form and details may ~e made therein without departing from the spirit and scope of the invention.

Claims (25)

1. A method for specifying a user interface, com-prising displaying a first window including an action text prompt;

a panel actions prompt; and a mode prompt;

specifying in said first window a set of responses to said prompts;

specifying one of a plurality of panel execution modes; and displaying in a second window from a plural-ity of subsets of said responses one of said subsets selected in response to said specified panel execution mode.
2. The method of Claim 1 wherein said plurality execution modes includes an add data mode and a change data mode.
3. The method of Claim 2 wherein said step of specifying said set of responses to said prompts comprises specifying a plurality of panel actions;

specifying one of a plurality of panel action modes for each said specified panel action;

specifying one of a plurality of action texts for each said specified panel action; and wherein said plurality of panel action modes is functionally related to said plurality of panel execution modes.
4. The method of Claim 3 wherein said one of said plurality of panel action modes is selected from a group comprised of said add data mode, said change data mode, and a blank mode.
5. The method of Claim 4 wherein each of said panel actions is sected from a group comprising panel operations and commands.
6. The method of Claim 5 wherein said subset of responses comprises a subset of said specified plurality of action texts, and wherein said specified panel action mode for each of said action texts of said subset corresponds to said specified panel execution mode.
7. The method of Claim 6 wherein said displayed first window further includes at least one panel action specifier prompt; and wherein said step of specifying said set of responses further comprises specifying at least one panel. action specifier for a corresponding at least one of said specified plurality of panel actions.
8. The method of Claim 7 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.
9. The method of Claim 8 further including displaying a set of preselected default values for at least one of said prompts; and wherein said specifying a set of responses to said prompts comprises selecting at least one of said default values from said displayed set of default values.
10. The method of Claim 9 wherein said subset of responses includes said selected at least one panel action specifier.
11. The method of Claim 10 wherein said second window is displayed during a panel execution.
12. The method of Claim 11 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.
13. The method of Claim 12 further including displaying in said first window a third window listing a plurality of said panel operations.
14. The method of Claim 13 wherein at least one of said specified 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.
15. The method of Claim 13 wherein at least one of said specified panel actions in one of said subsets corresponds to said add data execution and comprises an add and next or previous action.
16. The method of Claim 13 wherein at least one of said specified 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.
17. A system for specifying a user interface, comprising means for displaying a first window including an action text prompt, a panel actions prompt, and a mode prompt;

means for specifying in said first window a set of responses to said prompts;

means for specifying one of a plurality of panel execution modes; and means for displaying in a second window from a plurality of subsets of said responses one of said subsets selected in response to said specified panel execution mode.
18. The system of Claim 17 further including means for specifying a plurality of panel actions;

means for specifying one of a plurality of panel action modes for each said specified panel action; and means for specifying one of a plurality of action texts for each said specified panel action; and wherein said plurality of panel action modes is functionally related to said plurality of panel execution modes.
19. The system of Claim 18 wherein said means for displaying said first window includes means for displaying at least one panel action specifier prompt;
and wherein said means for specifying said set of responses further includes means for specifying at least one panel action specifier for a corresponding at least one specified plurality of panel actions.
20. The system of Claim 19 wherein said means for specifying at least one panel action specifier comprises an action key.
21. A method for defining a user interface to an application program comprising displaying a first window;

inputting in response to said first window a plurality of groups of panel-defining commands, each group including at least one panel operation or command; and an execution mode for each said at least one panel operation or command;

selecting an execution mode; and dynamically generating a plurality of second windows, each containing a different set of said groups of panel-defining commands determined as a function of said selected execution mode.
22. The method of claim 21 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.
23. The method of claim 22 further including the step of storing said generated second windows as a portion of an object of said panel.
24. The method of claim 23 further including the steps of executing said selected panel; and displaying one of said second windows during said execution of said selected panel.
25. The method of claim 24 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.
CA000593249A 1988-04-08 1989-03-09 User interface with system and method for specifying same Expired - Fee Related CA1313418C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/179,468 US5121477A (en) 1988-04-08 1988-04-08 System for interactively creating action bar pull-down windows of a user interface for use at program run time
US07/179,468 1988-04-08

Publications (1)

Publication Number Publication Date
CA1313418C true CA1313418C (en) 1993-02-02

Family

ID=22656718

Family Applications (1)

Application Number Title Priority Date Filing Date
CA000593249A Expired - Fee Related CA1313418C (en) 1988-04-08 1989-03-09 User interface with system and method for specifying same

Country Status (6)

Country Link
US (1) US5121477A (en)
EP (1) EP0336560B1 (en)
JP (1) JPH0612517B2 (en)
BR (1) BR8901665A (en)
CA (1) CA1313418C (en)
DE (1) DE68919503T2 (en)

Families Citing this family (98)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6978277B2 (en) * 1989-10-26 2005-12-20 Encyclopaedia Britannica, Inc. Multimedia search system
US5241671C1 (en) * 1989-10-26 2002-07-02 Encyclopaedia Britannica Educa Multimedia search system using a plurality of entry path means which indicate interrelatedness of information
US5220675A (en) * 1990-01-08 1993-06-15 Microsoft Corporation Method and system for customizing a user interface in an integrated environment
JP2554381B2 (en) * 1990-03-30 1996-11-13 インターナショナル・ビジネス・マシーンズ・コーポレーション Programming support device
US5412774A (en) * 1990-08-29 1995-05-02 At&T Corp. Apparatus for and method of displaying a data item of a database using the display function of a selected data item
US5327529A (en) * 1990-09-24 1994-07-05 Geoworks Process of designing user's interfaces for application programs
JPH0756628B2 (en) * 1990-10-22 1995-06-14 富士ゼロックス株式会社 Graphical user interface editing device
US20010002834A1 (en) * 1991-03-20 2001-06-07 Hitachi, Ltd. Method for inputting and acquiring requirement
US5566330A (en) * 1991-08-20 1996-10-15 Powersoft Corporation Method for forming a reusable and modifiable database interface object
US5421008A (en) * 1991-11-08 1995-05-30 International Business Machines Corporation System for interactive graphical construction of a data base query and storing of the query object links as an object
US6003033A (en) * 1992-02-28 1999-12-14 International Business Machines Corporation System and method for describing and creating a user defined arbitrary data structure corresponding to a tree in a computer memory
US6234689B1 (en) * 1992-04-06 2001-05-22 Hewlett-Packard Co. Apparatus and method for mapping a custom routine to an interface button
JPH0689307A (en) * 1992-05-04 1994-03-29 Internatl Business Mach Corp <Ibm> Device and method for displaying information in database
US5588105A (en) * 1992-11-16 1996-12-24 Apple Computer, Inc. Status bar for application windows
US5345550A (en) * 1992-12-23 1994-09-06 International Business Machines Corporation User-modifiable popup menus for object oriented behavior
US5553277A (en) * 1992-12-29 1996-09-03 Fujitsu Limited Image search method for searching and retrieving desired image from memory device
US5721850A (en) * 1993-01-15 1998-02-24 Quotron Systems, Inc. Method and means for navigating user interfaces which support a plurality of executing applications
US6031534A (en) * 1993-04-28 2000-02-29 Microsoft Corporation Operating system function for specifying a checked image representation and an unchecked image representation of a menu item
US5977966A (en) * 1993-04-28 1999-11-02 Microsoft Corporation System-provided window elements having adjustable dimensions
US5619688A (en) * 1993-09-02 1997-04-08 Microsoft Corporation Method and system for constructing database queries using a field selection grid
US5627959A (en) * 1993-09-20 1997-05-06 Oracle Corporation Method for manipulating graphic objects
JPH08161342A (en) * 1994-12-02 1996-06-21 Fujitsu Ltd Data base display device
US5724069A (en) * 1994-07-15 1998-03-03 Chen; Jack Y. Special purpose terminal for interactive user interface
US5581687A (en) * 1994-11-10 1996-12-03 Baxter International Inc. Interactive control systems for medical processing devices
US5694562A (en) * 1995-01-17 1997-12-02 Fisher; Thomas A. Closely integrated key icons in a graphical interface
JP3352562B2 (en) * 1995-03-31 2002-12-03 東芝機械株式会社 Man-machine interface device for process controller
US5721853A (en) * 1995-04-28 1998-02-24 Ast Research, Inc. Spot graphic display element with open locking and periodic animation
JPH09190267A (en) * 1995-08-23 1997-07-22 Toshiba Corp System and method for dynamically reconstituting keyboard allocation based on external event
US5937415A (en) * 1995-12-13 1999-08-10 Sybase, Inc. Data base development system with methods facilitating copying of data from one data source to another
US5831607A (en) * 1996-01-25 1998-11-03 International Business Machines Corporation Method for adapting multiple screens of information for access and use on a single graphical panel in a computer system
US20040019610A1 (en) * 1996-02-27 2004-01-29 Burns Kevin S. Portal information delivery system for personal computers and SOHO computer systems
US6014137A (en) 1996-02-27 2000-01-11 Multimedia Adventures Electronic kiosk authoring system
US5923323A (en) * 1996-06-26 1999-07-13 Xerox Corporation Method and apparatus for organizing and displaying long lists of data items on a work space of a computer controlled display system
US5784057A (en) * 1996-08-14 1998-07-21 International Business Machines Corporation Dynamically modifying a graphical user interface window title
US6104395A (en) * 1996-08-14 2000-08-15 International Business Machines Corporation Graphical interface method, apparatus and application for opening window of all designated container objects
US5867157A (en) * 1996-08-14 1999-02-02 International Business Machines Corporation Graphical interface method, apparatus and application for creating and modifying a list of values with multiple components
US5781193A (en) * 1996-08-14 1998-07-14 International Business Machines Corporation Graphical interface method, apparatus and application for creating multiple value list from superset list
US5818444A (en) * 1996-08-14 1998-10-06 International Business Machines Corporation Method, apparatus and application for object selective but global attribute modification
US5774120A (en) * 1996-08-14 1998-06-30 International Business Machines Corporation Refresh and select-all actions in graphical user interface
US5774119A (en) * 1996-08-14 1998-06-30 International Business Machines Corporation Graphical interface method, apparatus and application for selection of target object
US5872568A (en) * 1996-08-14 1999-02-16 International Business Machines Corporation Application and method for creating a list from pre-defined and user values
US6195096B1 (en) 1996-08-14 2001-02-27 International Business Machines Corporation Graphical interface method, apparatus and application for creating and modifying a multiple-value text list
US6002395A (en) * 1996-10-31 1999-12-14 Ncr Corporation System and method for building, testing and integrating a graphical touch user interface
AU6675098A (en) * 1997-02-28 1998-09-18 Starsight Telecast Incorporated Television control interface with electronic guide
US6262729B1 (en) * 1997-04-14 2001-07-17 Apple Computer, Inc. Method and apparatus for binding user interface objects to application objects
US6005577A (en) * 1997-05-19 1999-12-21 Watlow Electric Manufacturing Process controller with user-definable menuing system
TW509845B (en) 1997-12-13 2002-11-11 Samsung Electronics Co Ltd Computer system with jog dial function and the user interface scheme thereof
US6381507B1 (en) * 1998-07-01 2002-04-30 Sony Corporation Command pass-through functionality in panel subunit
US6295479B1 (en) * 1998-07-01 2001-09-25 Sony Corporation Of Japan Focus in/out actions and user action pass-through mechanism for panel subunit
US6556221B1 (en) * 1998-07-01 2003-04-29 Sony Corporation Extended elements and mechanisms for displaying a rich graphical user interface in panel subunit
US6148241A (en) * 1998-07-01 2000-11-14 Sony Corporation Of Japan Method and system for providing a user interface for a networked device using panel subunit descriptor information
US7865832B2 (en) * 1999-07-26 2011-01-04 Sony Corporation Extended elements and mechanisms for displaying a rich graphical user interface in panel subunit
JP3823549B2 (en) * 1998-07-14 2006-09-20 ブラザー工業株式会社 Print processing method and print processing apparatus
KR100315560B1 (en) 1998-09-04 2002-01-17 윤종용 Computer system for shell program interface and method thereof
US6714928B1 (en) 1999-03-19 2004-03-30 Sybase, Inc. Development system providing HTML database control object
US6411292B1 (en) 1999-03-31 2002-06-25 International Business Machines Corporation Display of pointing indicator within two-dimensional window display in three dimensions on a computer screen
US6822662B1 (en) 1999-03-31 2004-11-23 International Business Machines Corporation User selected display of two-dimensional window in three dimensions on a computer screen
US6938041B1 (en) 1999-04-30 2005-08-30 Sybase, Inc. Java-based data access object
US6476828B1 (en) 1999-05-28 2002-11-05 International Business Machines Corporation Systems, methods and computer program products for building and displaying dynamic graphical user interfaces
US7058517B1 (en) 1999-06-25 2006-06-06 Genaissance Pharmaceuticals, Inc. Methods for obtaining and using haplotype data
US6775378B1 (en) 1999-10-25 2004-08-10 Concerto Software, Inc Blended agent contact center
US6832203B1 (en) 1999-11-05 2004-12-14 Cim, Ltd. Skills based contact routing
US7230927B1 (en) 1999-12-07 2007-06-12 Aspect Software, Inc. Non-blocking expandable call center architecture
US6707906B1 (en) 2000-03-13 2004-03-16 Concerto Software, Inc. Outbound calling system in a contact center
US6678889B1 (en) 2000-05-05 2004-01-13 International Business Machines Corporation Systems, methods and computer program products for locating resources within an XML document defining a console for managing multiple application programs
AU2001263330A1 (en) * 2000-05-09 2001-12-03 Ztango, Inc. A method and system for biling over a wireless application protocol gateway
US6941339B1 (en) 2000-05-17 2005-09-06 Unbound Technologies Inc. Stated network portal system and method
AU2001263240A1 (en) * 2000-05-19 2001-12-03 Ztango, Inc. A system and user interface for managing users and services over a wireless communications network
US6766011B1 (en) 2000-06-16 2004-07-20 Concerto Software, Inc. Method and apparatus for controlling a contact center
US6931326B1 (en) 2000-06-26 2005-08-16 Genaissance Pharmaceuticals, Inc. Methods for obtaining and using haplotype data
DE10032421C2 (en) * 2000-07-04 2002-11-21 Joerg-Ulrich Woelfel Data processing tool
US6778951B1 (en) 2000-08-09 2004-08-17 Concerto Software, Inc. Information retrieval method with natural language interface
WO2002067102A1 (en) * 2001-02-22 2002-08-29 Fujitsu Limited Information processor, method of controlling display of information processor, recording medium, and program
US6778660B2 (en) 2001-04-06 2004-08-17 Concerto Software, Inc. Customer interaction system
US6959422B2 (en) * 2001-11-09 2005-10-25 Corel Corporation Shortcut key manager and method for managing shortcut key assignment
JP2004171371A (en) * 2002-11-21 2004-06-17 Toshiba Corp Information processing apparatus and method of assigning function to key
EP1615159A1 (en) * 2003-03-07 2006-01-11 Chacon Candau Digital assistant for generating accounting entries using a handheld character-oriented scanner
US7281214B2 (en) * 2003-06-02 2007-10-09 Apple Inc. Automatically updating user programmable input sensors to perform user specified functions
US7533367B2 (en) * 2003-06-27 2009-05-12 Microsoft Corporation Behavior architecture for component designers
US7036088B2 (en) * 2003-07-24 2006-04-25 Sap Ag Multi-modal method for application swapping
US7335106B2 (en) 2003-10-20 2008-02-26 Las Vegas Gaming, Inc. Closed-loop system for displaying promotional events and granting awards for electronic video games
US9564004B2 (en) * 2003-10-20 2017-02-07 Igt Closed-loop system for providing additional event participation to electronic video game customers
US10127765B1 (en) 2003-10-20 2018-11-13 Tipping Point Group, Llc Gaming machine having secondary gaming controller with proxy configuration
US8512144B2 (en) 2003-10-20 2013-08-20 Tipping Point Group, Llc Method and apparatus for providing secondary gaming machine functionality
US9582963B2 (en) 2003-10-20 2017-02-28 Tipping Point Group, Llc Method and system for gaming machine accounting
US8721449B2 (en) 2003-10-20 2014-05-13 Tipping Point Group, Llc Method and system for paragame activity at electronic gaming machine
US7426694B2 (en) * 2004-02-17 2008-09-16 Schweitzer Engineering Laboratories, Inc. System and method for customizing design of settings management user interface systems used to configure settings for intelligent electronic devices
US20050235225A1 (en) * 2004-04-19 2005-10-20 Aurobinda Pradhan Selectable commands for displaying user interface panels
US7911626B2 (en) * 2004-11-08 2011-03-22 Sharp Laboratories Of America, Inc. Systems and methods for providing a configurable user interface on an imaging device
US9613491B2 (en) * 2004-12-16 2017-04-04 Igt Video gaming device having a system and method for completing wagers and purchases during the cash out process
US9165280B2 (en) 2005-02-22 2015-10-20 International Business Machines Corporation Predictive user modeling in user interface design
US7661074B2 (en) * 2005-07-01 2010-02-09 Microsoft Corporation Keyboard accelerator
US20070083812A1 (en) * 2005-10-07 2007-04-12 Hudson Thomas R Jr GUI with improved mnemonic control
CN100356323C (en) * 2006-02-15 2007-12-19 无锡永中科技有限公司 User panel manager and method for creating user-defined dynamic subwindow
US7720868B2 (en) * 2006-11-13 2010-05-18 Microsoft Corporation Providing assistance with the creation of an XPath expression
KR20090065775A (en) * 2007-12-18 2009-06-23 삼성전자주식회사 Method for configuring and executing functions of an application and a portable terminal therefor
US9268848B2 (en) 2011-11-02 2016-02-23 Microsoft Technology Licensing, Llc Semantic navigation through object collections
US9916735B2 (en) 2015-07-22 2018-03-13 Igt Remote gaming cash voucher printing system

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE32633E (en) * 1982-07-19 1988-03-29 Apple Computer, Inc. Cursor control device
US4460975A (en) * 1982-09-17 1984-07-17 Saga Data, Inc. Easily accessible formating of computer printouts
US4555775B1 (en) * 1982-10-07 1995-12-05 Bell Telephone Labor Inc Dynamic generation and overlaying of graphic windows for multiple active program storage areas
US4531186A (en) * 1983-01-21 1985-07-23 International Business Machines Corporation User friendly data base access
US4688195A (en) * 1983-01-28 1987-08-18 Texas Instruments Incorporated Natural-language interface generating system
US4586158A (en) * 1983-02-22 1986-04-29 International Business Machines Corp. Screen management system
DE3381300D1 (en) * 1983-03-31 1990-04-12 Ibm IMAGE ROOM MANAGEMENT AND PLAYBACK IN A PART OF THE SCREEN OF A VIRTUAL MULTIFUNCTIONAL TERMINAL.
US4587520A (en) * 1983-04-07 1986-05-06 Rca Corporation Cursor controlled page selection in a video display
US4611306A (en) * 1983-05-11 1986-09-09 International Business Machines Corp. Display menu/chart key
US4656603A (en) * 1984-03-01 1987-04-07 The Cadware Group, Ltd. Schematic diagram generating system using library of general purpose interactively selectable graphic primitives to create special applications icons
US4723209A (en) * 1984-08-30 1988-02-02 International Business Machines Corp. Flow attribute for text objects
US4700297A (en) * 1984-09-14 1987-10-13 Merrill Lynch Relocation Management, Inc. Relocation management and reporting system
US4807142A (en) * 1984-10-09 1989-02-21 Wang Laboratories, Inc. Screen manager multiple viewport for a multi-tasking data processing system
US4789962A (en) * 1984-10-31 1988-12-06 International Business Machines Corporation Methods of displaying help information nearest to an operation point at which the help information is requested
US4648062A (en) * 1985-02-01 1987-03-03 International Business Machines Corporation Method for providing an on line help facility for interactive information handling systems
US4845665A (en) * 1985-08-26 1989-07-04 International Business Machines Corp. Simulation of computer program external interfaces
US4761642A (en) * 1985-10-04 1988-08-02 Tektronix, Inc. System for providing data communication between a computer terminal and a plurality of concurrent processes running on a multiple process computer
JPS62105202A (en) * 1985-10-31 1987-05-15 Fanuc Ltd Nc data generating method
US4727473A (en) * 1986-01-02 1988-02-23 Fischer & Porter Company Self-learning mechanism for a set of nested computer graphics
AU594109B2 (en) * 1986-03-27 1990-03-01 Wang Laboratories, Inc. Menu management system
US4794386A (en) * 1986-04-11 1988-12-27 Profit Technology, Inc. Data integrator for video display including windows
US4772882A (en) * 1986-07-18 1988-09-20 Commodore-Amiga, Inc. Cursor controller user interface system
US4752889A (en) * 1986-08-18 1988-06-21 Neuron Data, Inc. Dynamic, interactive display system for a knowledge base
GB8621061D0 (en) * 1986-09-01 1986-10-08 Hewlett Packard Ltd User interface simulation
US4763356A (en) * 1986-12-11 1988-08-09 AT&T Information Systems, Inc. American Telephone and Telegraph Company Touch screen form entry system
US4885704A (en) * 1987-01-12 1989-12-05 Kabushiki Kaisha Toshiba Electronic document filing apparatus with icon selection
US4791561A (en) * 1987-04-17 1988-12-13 Wang Laboratories, Inc. Interactive construction of means for database maintenance
US4805099A (en) * 1987-04-17 1989-02-14 Wang Laboratories, Inc. Retrieval of related records from a relational database
US4862390A (en) * 1987-12-24 1989-08-29 Hewlett-Packard Company Method and apparatus for selection of one from a plurality of entries listed on a computer display
US4945476A (en) * 1988-02-26 1990-07-31 Elsevier Science Publishing Company, Inc. Interactive system and method for creating and editing a knowledge base for use as a computerized aid to the cognitive process of diagnosis

Also Published As

Publication number Publication date
EP0336560A3 (en) 1991-01-30
EP0336560A2 (en) 1989-10-11
JPH01263818A (en) 1989-10-20
DE68919503D1 (en) 1995-01-12
JPH0612517B2 (en) 1994-02-16
BR8901665A (en) 1989-11-21
US5121477A (en) 1992-06-09
EP0336560B1 (en) 1994-11-30
DE68919503T2 (en) 1995-06-01

Similar Documents

Publication Publication Date Title
CA1313418C (en) User interface with system and method for specifying same
US5115501A (en) Procedure for automatically customizing the user interface of application programs
JP2752040B2 (en) How to Create a Multimedia Application
US5764226A (en) Reusable and modifiable data entry interface part
US5524238A (en) User specific intelligent interface which intercepts and either replaces or passes commands to a data identity and the field accessed
CA1313419C (en) Valuator menu for use as a graphical user interface tool
EP2972977B1 (en) A system and method for dialog customization
US5287514A (en) Method and system for customizing a user interface in a computer system
US5528744A (en) Data processing system
US5600780A (en) Programming environment system for customizing a program application based upon user input
CA2027157C (en) Computer user interface
US5586242A (en) Font manager with selective access of installed fonts
WO2006106495A1 (en) A dynamic user interface and a method for generating a dynamic user interface for interfacing with an electronic data repository storing a collection of data elements
JPH0244419A (en) Generation of interactive window indicatable in display of information processing system and apparatus for implementing the same
US20070006069A1 (en) System and method for improved web portal design through control tree file utilization
CA2016225A1 (en) Object database-driven interactive shell for a data processing system
US20060294496A1 (en) System and method for improved web portal design through control tree file creation
EP0621527A1 (en) Hierarchically grouped macroinstructions for a graphical user interface
US6587102B2 (en) Rendering panels in multiple display contexts
EP0243671B1 (en) Menu management system
EP0483040A2 (en) Method for displaying multiple entry data fields on a video screen in an object oriented software program
EP0377273A2 (en) Space management system incorporating a software-operating environment
US20060294495A1 (en) System and method for improved web portal design through control tree file modification
EP0415573B1 (en) Data processing system
JPH06243223A (en) Interactive processing system

Legal Events

Date Code Title Description
MKLA Lapsed