Browse Prior Art Database

Abstraction of Mouse/Keyboard User Input Mechanisms

IP.com Disclosure Number: IPCOM000102467D
Original Publication Date: 1990-Nov-01
Included in the Prior Art Database: 2005-Mar-17
Document File: 3 page(s) / 114K

Publishing Venue

IBM

Related People

Fleming, SS: AUTHOR

Abstract

This invention solves the problem of customizing or extending an object-oriented user interface without modification of an existing program. This is accomplished by using an abstract protocol to separate the user-input mechanisms from the application function code. The response to user-input mechanisms may then be changed within the abstract protocol without affecting the existing program.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Abstraction of Mouse/Keyboard User Input Mechanisms

       This invention solves the problem of customizing or
extending an object-oriented user interface without modification of
an existing program.  This is accomplished by using an abstract
protocol to separate the user-input mechanisms from the application
function code.  The response to user-input mechanisms may then be
changed within the abstract protocol without affecting the existing
program.

      In this invention, the user-interface mechanism used to perform
an action on an object can vary, while the underlying action is
unchanged.

      Examples of user-interface mechanisms include selection plus
action bars, direct manipulation, context menus (pop-up menus), and
pointing device tools such as used in drawing programs.

      It is desirable to be able to customize and extend the
user-interface mechanisms available without modifying an existing
program.  An example of customizing would be assigning a single click
of mouse button 2 to add an object to the existing set of selections.
An exemplary extension would be adding the ability to perform context
menu (pop-up menu) operations directly on an object via the pointer.

      The following invention provides for customizing and extension
of an object-oriented user interface without modification of an
existing program:

      THE POINTING DEVICE DESIGN The pointing device becomes an
object in the sense of object-oriented programming.  This means that
states and processing are associated with the pointer.

      When the user interacts with an application program using the
pointer, the interaction described in terms of object-oriented
programming takes place as follows:
1.  The pointer programming object sends a message to the application
program object describing the pointer position.
2.  The application program returns a (sub)object which corresponds
to the pointer position in the application program window.  If more
than one object could be indicated for a given pointer position, an
ordered collection of objects is returned.  The ordering is based on
logical containment, starting with the highest level object, for
example, an icon object, an icon name text object.
3.  The pointer invokes a user-interface mechanism appropriate for
the user's interaction.  For example, with a mouse if the user
clicked mouse button 2, a context menu may appear.
4.  If an action on the application program (sub)object is specified
by the user mechanism, e.g. select or delete, the pointer object
sends the action message "select" or "delete" directly to the
(sub)object which processes the message.  If more than one object was
indicated by the application, the pointer selects what object to send
the mes...