Electrical computers and digital processing systems: interprogra – Event handling or event notification
Reexamination Certificate
1999-07-29
2004-11-23
Bullock, Jr., Lewis A. (Department: 2126)
Electrical computers and digital processing systems: interprogra
Event handling or event notification
C345S619000, C345S215000
Reexamination Certificate
active
06823523
ABSTRACT:
TECHNICAL FIELD
The present invention relates generally to an improved data processing system and, in particular, to a process and system for improving execution performance in a runtime environment.
DESCRIPTION OF RELATED ART
With the “write once, run anywhere” concept, it is envisioned that applications or applets should be able to run on a mainframe computer and, without modification, also run on a hand-held device or Personal Digital Assistant (PDA). Obviously, a PDA and a mainframe computer have widely varying computing resources. An application running on these platforms may have widely varying amounts of memory or computing power at its disposal, and a properly designed application should take advantage of the available resources while maintaining its portability. On the other hand, since an application may execute in an environment with limited computing resources, a properly designed application should also attempt to save computing resources whenever possible while, again, maintaining its portability.
Many computer programs employ some type of graphical user interface (GUI) to provide output and receive input from a user. GUI routines are generally computationally expensive, and a program that makes a large number of calls to GUI routines may spend a significant amount of its execution time within these routines. Judicious use of calls to GUI routines is a standard programming practice for ensuring that computational resources are not wasted while an application is executing. However, an application must invoke the GUI routines in order to provide user interaction.
Many programming environments support a set of standard GUI components, such as buttons, checkboxes, text, labels, etc. In object-oriented programming environments, GUI components are often related in an inheritance hierarchy, e.g., the button class and the label class inherit from a generic component class. The class for a component inherits variables and methods from its superclass, including the paint method. The paint method is used to display the component and is called in response to an update or repaint request. For example, when a label that was previously covered by a window is uncovered when a user moves the window, any component that has been uncovered must redraw its contents, and this redrawing action is done in response to an update request or repaint request. In fact, any subclasses of the standard component classes are free to define their own paint methods (by overriding the paint method of the superclass) in order to provide additional graphics or a different look to the component. The paint methods of the subclasses are then called instead in response to an update or repaint request. Since components are used extensively in applications, their paint methods are called frequently, and a significant amount of execution time is spent within these routines.
Therefore, it would be advantageous to improve the performance of calls to GUI routines. It would be further advantageous to provide a process by which the handling of a paint event for a graphical user interface component may be optimized, thereby saving computing resources, and it would be particularly advantageous to provide an optimized process that is portable among computing platforms.
SUMMARY OF THE INVENTION
The present invention provides a process and system for blocking unnecessary callbacks to empty paint methods of graphical user interface components. The process initializes a platform-dependent peer class corresponding to a platform-independent class for the graphical user interface component and stores a value representing whether the platform-independent class extends a standard platform-independent class for the graphical user interface component. A native paint method determines whether a callback to a paint method of the platform-dependent peer object is necessary for processing of the paint event. The callback determination is performed by checking the stored value representing the extension of the standard graphics class for the component. If a callback is necessary, then the native paint method initiates a callback to the paint method of the platform-dependent peer object. The native paint method may be implemented in the C++ programming language, and the platform-dependent peer class and the platform-independent class may be implemented in the Java programming language.
REFERENCES:
patent: 5012510 (1991-04-01), Schaubs et al.
patent: 5155761 (1992-10-01), Hammond
patent: 5247676 (1993-09-01), Ozur et al.
patent: 5440687 (1995-08-01), Coleman et al.
patent: 5642509 (1997-06-01), Ohshima et al.
patent: 5768510 (1998-06-01), Gish
patent: 5805775 (1998-09-01), Eberman et al.
patent: 5805886 (1998-09-01), Skarbo et al.
patent: 5848246 (1998-12-01), Gish
patent: 5933144 (1999-08-01), Alcorn
patent: 6182156 (2001-01-01), Togawa
patent: 6281893 (2001-08-01), Goldstein
patent: 10051566 (1998-02-01), None
patent: 10065820 (1998-03-01), None
patent: 10084340 (1998-03-01), None
Hughes, James. “Package”. Jun. 7, 1997.*
Eng, Eirik. “Qt GUI Toolkit: Porting graphics to multiple platforms using a GUI toolkit.” ACM, Nov. 1996.*
“Handling Input Events”. http://www.genlogic.com/doc_html/glgpr.4.html.*
Koshizuka, Noboru et al. “Window Real-Objects: A Distributed Shared Memory for Distributed Implementation of GUI Applications.” ACM, Nov. 1993.*
“Design Patterns in Java AWT.” http://www.soberit.hut.fi/tik-76.278/group6/awtpat.html.*
Sun Microsystems. “Swing Short Course, Part II.” 1997.*
International Business Machines Corporation; Client Object Model For DIstributed Servers; IBM Technical Disclosure Bulletin; vol. 39, No. 07, Jul. 1996; pp. 229-230.
International Business Machines Corporation; Method For Deadlock Prevention for Callbacks In A Distributed Environment; IBM Technical Disclosure Bulletin; vol. 38, No. 12, Dec. 1995; pp. 67-70.
International Business Machines Corporation; Use of Calback Routines In The Implementation Of Open Systems Interconnection Management Standards; IBM Technical Disclosure Bulletin; vol. 39, No. 01, Jan. 1996; pp. 367-373.
International Business Machines Corporation; Method for Agent Construction, Research Disclosure, Jun. 1998; pp. 767-768.
Czajkowski et al.; Jres: A resource accounting Interface for Java; 1998; pp. 21-35.
Seshadri; How Do I Implement Callbacks With Java's RMI?; 1998; pp. 123-124.
Xinda et al; Experiments on Heterogeneous Scheduling Via Callback; 1997; pp. 278-283.
Robinson; A C++ Class Library For Teaching and Research In Image Processing; 1996; p. 206-212.
Campbell William Allan
Wong Wai Yee Peter
Bailey Wayne P.
Bullock, Jr. Lewis A.
International Business Machines Corporations
LaBaw Jeffrey S.
Yee Duke W.
LandOfFree
Process and system for blocking unnecessary callbacks to... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Process and system for blocking unnecessary callbacks to..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Process and system for blocking unnecessary callbacks to... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3354110