Smalltalk/V PM Officevision/2 Release 2 Developer's Toolkit Direct Manipulation Methodology and Protocol Implementation
Original Publication Date: 1991-Dec-01
Included in the Prior Art Database: 2005-Apr-04
Miller, PC: AUTHOR [+2]
This article describes a Direct Manipulation Methodology and Protocol Implementation, which allows developers to interact with OfficeVision*/2 (OV/2) using direct manipulation without having to understand the protocol of direct manipulation or how to render their object after a drop.
Smalltalk/V PM Officevision/2 Release 2 Developer's
Manipulation Methodology and Protocol Implementation
describes a Direct Manipulation Methodology
and Protocol Implementation, which allows developers to interact with
OfficeVision*/2 (OV/2) using direct manipulation without having to
understand the protocol of direct manipulation or how to render their
object after a drop.
Manipulation (drag) provides an easy way for users to
interact with other applications in the OV/2 environment; however,
the protocol is complex and difficult to implement well. Not only do
developers have to understand how the drag protocol works, but they
must also understand what must be done after a drop so that their
object can be rendered in a format accepted by another object. There
is also no easy way to incorporate this function into an
object-oriented environment. This reduces developer productivity,
cost effectiveness and quality.
Smalltalk/V** PM OfficeVision/2 Release 2 Developer's
Toolkit [*], a developer makes use of direct manipulation
automatically. The direct manipulation protocol is implemented in
two classes: OV2Object and OV2Window. A developer would obtain the
drag functionality by creating a subclass of OV2Object, thereby
inheriting its behavior and using an OV2Window to present itself to
the user. Both classes must be used together to get the complete
functionality available with the toolkit.
Fig. 1 - Class Hierarchy Structure
Insurance Application "uses instance of OV2Window"
the user interface piece is responsible for
handling all the PM messages that are necessary to participate in
direct manipulation. A developer would create an instance of
OV2Window instead of ApplicationWindow. OV2Window has the ability to
notify its owner of events such as being dragged over, dropped on or
if the user has initiated a drag. If the owner is interested in these
events, he could register the events he was interested in with the
OV2Window, and the OV2Window would not...