A method and apparatus for performing actions while selecting objects on a
user interface display. A user may select a first item in an area of a
display controlled by a first process and drag that item to a second area
on a display controlled by a second process. The second process may
negotiate with the first process to provide certain data types, and based
upon those data types, the second process will determine a list of
actions in hierarchical fashion which may be performed upon the data.
Such actions may include, but are not limited to, printing, sending
electronic mail, and performing other actions in the computer system.
Alternative and primary actions may also be specified by a user, such as
by selecting various keys on a keyboard or other input device. Further, a
user may specify that the second process display a list of actions which
may be performed upon the selected item and allow the user to select an
action from a list.