    deferred class
    	EV_ABSTRACT_PICK_AND_DROPABLE

    General
    	cluster: interface
    	description:
    		"Abstract interface for all pick and dropable classes.
    		Descendants include: widgets, items and figures."
    	keywords: "pick and drop, figure, widget, item"

    Ancestors
    	IDENTIFIED

    Action sequences
    	conforming_pick_actions: EV_NOTIFY_ACTION_SEQUENCE
    	drop_actions: EV_PND_ACTION_SEQUENCE
    	pick_actions: EV_PND_START_ACTION_SEQUENCE
    	pointer_motion_actions: EV_POINTER_MOTION_ACTION_SEQUENCE

    Queries
    	accept_cursor: EV_POINTER_STYLE
    	deny_cursor: EV_POINTER_STYLE
    	id_object (an_id: INTEGER_32): IDENTIFIED
    	is_equal (other: [like Current] EV_ABSTRACT_PICK_AND_DROPABLE): BOOLEAN
    	object_id: INTEGER_32
    	pebble: ANY
    	pebble_function: FUNCTION [ANY, TUPLE, ANY]
    	target_name: STRING_GENERAL

    Commands
    	copy (other: [like Current] EV_ABSTRACT_PICK_AND_DROPABLE)
    	remove_pebble
    	set_accept_cursor (a_cursor: [like accept_cursor] EV_POINTER_STYLE)
    	set_deny_cursor (a_cursor: [like deny_cursor] EV_POINTER_STYLE)
    	set_pebble (a_pebble: [like pebble] ANY)
    	set_pebble_function (a_function: FUNCTION [ANY, TUPLE, ANY])
    	set_target_name (a_name: STRING_GENERAL)