    deferred class
    	EV_VIEWPORT_I

    General
    	cluster: implementation_mswin
    	description: "Eiffel Vision viewport. Implementation interface."
    	keywords: "container, virtual, display"

    Ancestors
    	EV_CELL_I*

    Action sequences
    	conforming_pick_actions: EV_NOTIFY_ACTION_SEQUENCE
    	dock_ended_actions: EV_NOTIFY_ACTION_SEQUENCE
    	dock_started_actions: EV_NOTIFY_ACTION_SEQUENCE
    	docked_actions: EV_DOCKABLE_SOURCE_ACTION_SEQUENCE
    	drop_actions: EV_PND_ACTION_SEQUENCE
    	file_drop_actions: ACTION_SEQUENCE [TUPLE [LIST [STRING_32]]]
    	focus_in_actions: EV_NOTIFY_ACTION_SEQUENCE
    	focus_out_actions: EV_NOTIFY_ACTION_SEQUENCE
    	key_press_actions: EV_KEY_ACTION_SEQUENCE
    	key_press_string_actions: EV_KEY_STRING_ACTION_SEQUENCE
    	key_release_actions: EV_KEY_ACTION_SEQUENCE
    	mouse_wheel_actions: EV_INTEGER_ACTION_SEQUENCE
    	new_item_actions: EV_NEW_ITEM_ACTION_SEQUENCE
    	pick_actions: EV_PND_START_ACTION_SEQUENCE
    	pick_ended_actions: EV_PND_FINISHED_ACTION_SEQUENCE
    	pointer_button_press_actions: EV_POINTER_BUTTON_ACTION_SEQUENCE
    	pointer_button_release_actions: EV_POINTER_BUTTON_ACTION_SEQUENCE
    	pointer_double_press_actions: EV_POINTER_BUTTON_ACTION_SEQUENCE
    	pointer_enter_actions: EV_NOTIFY_ACTION_SEQUENCE
    	pointer_leave_actions: EV_NOTIFY_ACTION_SEQUENCE
    	pointer_motion_actions: EV_POINTER_MOTION_ACTION_SEQUENCE
    	resize_actions: EV_GEOMETRY_ACTION_SEQUENCE

    Queries
    	accept_cursor: EV_POINTER_STYLE
    	actual_drop_target_agent: FUNCTION [ANY, TUPLE [INTEGER_32, INTEGER_32], EV_ABSTRACT_PICK_AND_DROPABLE]
    	background_color: EV_COLOR
    	background_pixmap: EV_PIXMAP
    	client_height: INTEGER_32
    	client_width: INTEGER_32
    	closest_dockable_target: EV_DOCKABLE_TARGET
    	Default_accept_cursor: EV_POINTER_STYLE
    	Default_deny_cursor: EV_POINTER_STYLE
    	default_key_processing_handler: PREDICATE [ANY, TUPLE [EV_KEY]]
    	Default_pixmaps: EV_STOCK_PIXMAPS
    	deny_cursor: EV_POINTER_STYLE
    	dockable_dialog_target: EV_DOCKABLE_DIALOG
    	Drag_cursor: EV_POINTER_STYLE
    	foreground_color: EV_COLOR
    	get_next_target (a_widget: EV_WIDGET): EV_DOCKABLE_TARGET
    	Global_drag_targets: ARRAYED_LIST [INTEGER_32]
    	Global_pnd_targets: HASH_TABLE [INTEGER_32, INTEGER_32]
    	has_capture: BOOLEAN
    	has_focus: BOOLEAN
    	height: INTEGER_32
    	help_context: FUNCTION [ANY, TUPLE, EV_HELP_CONTEXT]
    	Insert_label: EV_CELL
    	Insert_label_imp: EV_CELL_I
    	Insert_sep: EV_TOOL_BAR_SEPARATOR
    	Insert_sep_imp: EV_TOOL_BAR_SEPARATOR_I
    	internal_non_sensitive: BOOLEAN
    	internal_pointer_style: EV_POINTER_STYLE
    	Internal_screen: EV_SCREEN
    	is_displayed: BOOLEAN
    	is_dock_executing: BOOLEAN
    	is_dockable: BOOLEAN
    	is_docking_enabled: BOOLEAN
    	is_external_docking_enabled: BOOLEAN
    	is_external_docking_relative: BOOLEAN
    	is_show_requested: BOOLEAN
    	is_transport_enabled: BOOLEAN
    	item: EV_WIDGET
    	merged_radio_button_groups: ARRAYED_LIST [EV_CONTAINER]
    	minimum_height: INTEGER_32
    	minimum_width: INTEGER_32
    	mode_is_drag_and_drop: BOOLEAN
    	mode_is_pick_and_drop: BOOLEAN
    	mode_is_target_menu: BOOLEAN
    	not_external_docking_enabled: BOOLEAN
    	not_is_external_docking_relative: BOOLEAN
    	original_parent_position: INTEGER_32
    	original_x_offset: INTEGER_16
    	original_y_offset: INTEGER_16
    	originating_source: EV_DOCKABLE_SOURCE_I
    	parent: EV_CONTAINER
    	pebble: ANY
    	pebble_function: FUNCTION [ANY, TUPLE, ANY]
    	pebble_positioning_enabled: BOOLEAN
    	pebble_x_position: INTEGER_32
    	pebble_y_position: INTEGER_32
    	pixmap_equal_to (a_pixmap: EV_PIXMAP): BOOLEAN
    	pointer_position: EV_COORDINATE
    	pointer_style: EV_POINTER_STYLE
    	pointer_x: INTEGER_16
    	pointer_y: INTEGER_16
    	real_source: EV_DOCKABLE_SOURCE
    	real_target: EV_DOCKABLE_TARGET
    	rubber_band_is_drawn: BOOLEAN
    	screen_x: INTEGER_32
    	screen_y: INTEGER_32
    	source_being_docked: EV_DOCKABLE_SOURCE_I
    	user_is_sensitive: BOOLEAN
    	veto_dock_function: FUNCTION [ANY, TUPLE [EV_DOCKABLE_SOURCE], BOOLEAN]
    	width: INTEGER_32
    	x_offset: INTEGER_32
    	x_position: INTEGER_32
    	y_offset: INTEGER_32
    	y_position: INTEGER_32

    Commands
    	close_dockable_dialog (dockable_dialog: EV_DOCKABLE_DIALOG)
    	complete_dock
    	disable_dockable
    	disable_docking
    	disable_external_docking
    	disable_external_docking_relative
    	disable_pebble_positioning
    	disable_transport
    	enable_dockable
    	enable_docking
    	enable_external_docking
    	enable_external_docking_relative
    	enable_pebble_positioning
    	enable_transport
    	extend (an_item: [like item] EV_WIDGET)
    	hide
    	internal_disable_dockable
    	internal_enable_dockable
    	merge_radio_button_groups (other: EV_CONTAINER)
    	propagate_background_color
    	propagate_foreground_color
    	refresh_now
    	remove_background_pixmap
    	remove_default_key_processing_handler
    	remove_help_context
    	remove_insert_label
    	remove_insert_sep
    	remove_pebble
    	remove_real_source
    	remove_real_target
    	replace (v: [like item] EV_WIDGET)
    	set_accept_cursor (a_cursor: [like accept_cursor] EV_POINTER_STYLE)
    	set_actual_drop_target_agent (an_agent: [like actual_drop_target_agent] FUNCTION [ANY, TUPLE [INTEGER_32, INTEGER_32], EV_ABSTRACT_PICK_AND_DROPABLE])
    	set_background_color (a_color: [like background_color] EV_COLOR)
    	set_background_pixmap (a_pixmap: EV_PIXMAP)
    	set_default_colors
    	set_default_key_processing_handler (a_handler: [like default_key_processing_handler] PREDICATE [ANY, TUPLE [EV_KEY]])
    	set_deny_cursor (a_cursor: [like deny_cursor] EV_POINTER_STYLE)
    	set_drag_and_drop_mode
    	set_focus
    	set_foreground_color (a_color: [like foreground_color] EV_COLOR)
    	set_help_context (an_help_context: [like help_context] FUNCTION [ANY, TUPLE, EV_HELP_CONTEXT])
    	set_item_height (a_height: INTEGER_32)
    	set_item_size (a_width, a_height: INTEGER_32)
    	set_item_width (a_width: INTEGER_32)
    	set_minimum_height (a_minimum_height: INTEGER_32)
    	set_minimum_size (a_minimum_width, a_minimum_height: INTEGER_32)
    	set_minimum_width (a_minimum_width: INTEGER_32)
    	set_offset (an_x, a_y: INTEGER_32)
    	set_pebble (a_pebble: [like pebble] ANY)
    	set_pebble_function (a_function: FUNCTION [ANY, TUPLE, ANY])
    	set_pebble_position (a_x, a_y: INTEGER_32)
    	set_pick_and_drop_mode
    	set_real_source (dockable_source: EV_DOCKABLE_SOURCE)
    	set_real_target (a_target: EV_DOCKABLE_TARGET)
    	set_target_menu_mode
    	set_veto_dock_function (a_function: FUNCTION [ANY, TUPLE [EV_DOCKABLE_SOURCE], BOOLEAN])
    	set_x_offset (an_x: INTEGER_32)
    	set_y_offset (a_y: INTEGER_32)
    	show
    	unmerge_radio_button_groups (other: EV_CONTAINER)
    	user_disable_sensitive
    	user_enable_sensitive