Data processing: database and file management or data structures – Database design – Data structure types
Reexamination Certificate
1998-02-24
2001-05-22
Black, Thomas G. (Department: 2771)
Data processing: database and file management or data structures
Database design
Data structure types
C707S793000, C345S215000, C345S215000, C345S215000
Reexamination Certificate
active
06237004
ABSTRACT:
FIELD OF THE INVENTION
The invention relates to the field of information handling systems. More particularly, the invention relates to a system and method for dynamically creating and modifying graphical user interface control elements used to display data in a graphical user interface.
BACKGROUND OF THE INVENTION
Many information handling systems include a graphical user interface (GUI) with which a user communicates with the system. A GUI includes the use of graphic symbols or pictures, rather than just words, to represent objects or elements in the system. Program code is associated with a graphic symbol in order to allow the graphic symbol to possess certain desired behaviors. A graphic symbol, along with its associated program code, make up a GUI control element. The term “widget” is often used to refer to a graphic symbol and its associated program code. Examples of widgets include scroll bars, buttons, icons, dialog boxes, etc.
Programs which include a GUI typically display many widgets, which can be utilized by a user to communicate with the program and/or control events in the system. For example, a program may require user input regarding two possible choices. To obtain the necessary user input, the program may display a selection box widget on the screen. The user, by using a mouse, points and clicks on one selection within the selection box to indicate a particular choice, or points and clicks on the other selection to indicate a different choice.
The specific widgets used by a program are typically coded in the program itself (or a module or object associated with the program). The type of widget to use for a certain set of data, for instance, is determined in the code. This means that in order to change the type of widget used, the program code must be changed, recompiled, and relinked or rebuilt. In the example above, it may be desired to change the selection box widget to a button widget, where the user indicates a choice by either clicking or not clicking on the button widget. To make this change, the program code must be changed to cause a button widget to display on the screen, rather than a selection box widget. After changing the code, it must be recompiled, and then relinked or rebuilt.
It would be desirable to have a system and method for creating and modifying widgets, where the widget specification is determined outside of a program code implementation. It would also be desirable to decouple the widget choice from a particular code implementation, so that a widget may be changed without having to change the program code which uses the widget to display (i.e. contain) data.
SUMMARY OF THE INVENTION
Accordingly, the present invention is directed to a system, method, and computer readable medium for determining which graphic user interface (GUI) control element, including a graphic symbol and associated control code, to use to display particular data. The present invention uses a data-driven model, wherein the GUI control element, referred to as a widget, for a particular set of data is determined dynamically, based on information contained in a database. Thus, the widget specification is determined outside of the actual program code which uses the widget, so as to decouple the widget choice from the particular code implementation. The present invention allows a widget to be created, displayed, and modified without having to change the program code which uses the widget to display data.
As a program executes, it is determined that data needs to be displayed as part of a graphical user interface. The program which is executing calls a generic GUI manager, which determines which widget to use for the particular data at this point in the program and displays the widget. The generic GUI manager reads a database entry associated with the data to be displayed. The database entry contains information, or characteristics, regarding the data. The characteristics are then analyzed by the generic GUI manager to determine which type of widget to use to display the data. An appropriate widget is then selected and used.
An advantage of the present invention is that a widget specification is determined outside of a program code implementation. Thus the widget used to display a particular set of data may be changed without changing the code in the program which actually uses and displays the data. If one or more characteristics are changed in the database entry corresponding to a particular data set, the widget used to display the data will dynamically change without any changes being made to the program code. Another advantage of the present invention is that it supports both homogenous changes (i.e. graphic symbol changes, where the behavior remains the same) and heterogeneous changes (i.e. where both the graphic symbol and the behavior change).
REFERENCES:
patent: 5485618 (1996-01-01), Smith
patent: 5625565 (1997-04-01), Van Dyke
patent: 5627959 (1997-05-01), Brown
patent: 5812394 (1998-09-01), Lewis
patent: 5931917 (1999-08-01), Nguyen et al.
patent: 6075528 (2000-06-01), Curtis
Dodson John Paul
Nguyen Minh
Schwendiman Chris Alan
Black Thomas G.
International Business Machines - Corporation
Mizrahi Diane D.
VanLeeuwen Leslie A.
LandOfFree
System and method for displaying data using graphical user... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with System and method for displaying data using graphical user..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System and method for displaying data using graphical user... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2521290