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.