class
	EV_RICH_TEXT

General
	cluster: interface
	description: 
		"EiffelVision rich text area, supporting multiple lines of text, with font and color
		formatting applicable on a character by character basis."

Ancestors
	EV_RICH_TEXT_ACTION_SEQUENCES*
	EV_TEXT

Action sequences
	caret_move_actions: EV_INTEGER_ACTION_SEQUENCE
	change_actions: EV_NOTIFY_ACTION_SEQUENCE
	conforming_pick_actions: EV_NOTIFY_ACTION_SEQUENCE
	dock_ended_actions: EV_NOTIFY_ACTION_SEQUENCE
	dock_started_actions: EV_NOTIFY_ACTION_SEQUENCE
	drop_actions: EV_PND_ACTION_SEQUENCE
	file_access_actions: EV_INTEGER_ACTION_SEQUENCE
	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
	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
	selection_change_actions: EV_NOTIFY_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
	buffer_locked_in_append_mode: BOOLEAN
	buffer_locked_in_format_mode: BOOLEAN
	caret_position: INTEGER_32
	character_displayed (an_index: INTEGER_32): BOOLEAN
	character_format (caret_index: INTEGER_32): EV_CHARACTER_FORMAT
	character_format_contiguous (start_index, end_index: INTEGER_32): BOOLEAN
	character_format_range_information (start_index, end_index: INTEGER_32): EV_CHARACTER_FORMAT_RANGE_INFORMATION
	current_line_number: INTEGER_32
	data: ANY
	default_key_processing_handler: PREDICATE [ANY, TUPLE [EV_KEY]]
	deny_cursor: EV_POINTER_STYLE
	first_position_from_line_number (i: INTEGER_32): INTEGER_32
	font: EV_FONT
	foreground_color: EV_COLOR
	has_capture: BOOLEAN
	has_focus: BOOLEAN
	has_selection: BOOLEAN
	has_word_wrapping: BOOLEAN
	height: INTEGER_32
	help_context: FUNCTION [ANY, TUPLE, EV_HELP_CONTEXT]
	id_object (an_id: INTEGER_32): IDENTIFIED
	index_from_position (an_x_position, a_y_position: INTEGER_32): INTEGER_32
	is_destroyed: BOOLEAN
	is_displayed: BOOLEAN
	is_dockable: BOOLEAN
	is_editable: BOOLEAN
	is_external_docking_enabled: BOOLEAN
	is_external_docking_relative: BOOLEAN
	is_sensitive: BOOLEAN
	is_show_requested: BOOLEAN
	last_load_successful: BOOLEAN
	last_position_from_line_number (i: INTEGER_32): INTEGER_32
	line (i: INTEGER_32): STRING_32
	line_count: INTEGER_32
	line_number_from_position (i: INTEGER_32): INTEGER_32
	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
	object_id: INTEGER_32
	paragraph_format (caret_index: INTEGER_32): EV_PARAGRAPH_FORMAT
	paragraph_format_contiguous (start_position, end_position: INTEGER_32): BOOLEAN
	paragraph_format_range_information (start_position, end_position: INTEGER_32): EV_PARAGRAPH_FORMAT_RANGE_INFORMATION
	parent: EV_CONTAINER
	parent_of_source_allows_docking: BOOLEAN
	pebble: ANY
	pebble_function: FUNCTION [ANY, TUPLE, ANY]
	pebble_positioning_enabled: BOOLEAN
	pebble_x_position: INTEGER_32
	pebble_y_position: INTEGER_32
	pointer_position: EV_COORDINATE
	pointer_style: EV_POINTER_STYLE
	position_from_index (an_index: INTEGER_32): EV_COORDINATE
	real_source: EV_DOCKABLE_SOURCE
	real_target: EV_DOCKABLE_TARGET
	screen_x: INTEGER_32
	screen_y: INTEGER_32
	search (str: STRING_GENERAL; start: INTEGER_32): INTEGER_32
	selected_character_format: EV_CHARACTER_FORMAT
	selected_paragraph_format: EV_PARAGRAPH_FORMAT
	selected_text: STRING_32
	selection_end: INTEGER_32
	selection_start: INTEGER_32
	source_has_current_recursive (source: EV_DOCKABLE_SOURCE): BOOLEAN
	tab_positions: EV_ACTIVE_LIST [INTEGER_32]
	tab_width: INTEGER_32
	target_name: STRING_GENERAL
	text: STRING_32
	text_length: INTEGER_32
	tooltip: STRING_32
	valid_caret_position (pos: INTEGER_32): BOOLEAN
	valid_line_index (i: INTEGER_32): BOOLEAN
	width: INTEGER_32
	x_position: INTEGER_32
	y_position: INTEGER_32

Commands
	append_text (a_text: STRING_GENERAL)
	buffered_append (a_text: STRING_GENERAL; format: EV_CHARACTER_FORMAT)
	buffered_format (start_position, end_position: INTEGER_32; format: EV_CHARACTER_FORMAT)
	center_pointer
	copy (other: [like Current] EV_RICH_TEXT)
	copy_selection
	cut_selection
	delete_selection
	deselect_all
	destroy
	disable_capture
	disable_dockable
	disable_edit
	disable_external_docking
	disable_external_docking_relative
	disable_pebble_positioning
	disable_sensitive
	disable_word_wrapping
	enable_capture
	enable_dockable
	enable_edit
	enable_external_docking
	enable_external_docking_relative
	enable_pebble_positioning
	enable_sensitive
	enable_word_wrapping
	flush_buffer
	flush_buffer_to (start_position, end_position: INTEGER_32)
	format_paragraph (start_position, end_position: INTEGER_32; format: EV_PARAGRAPH_FORMAT)
	format_region (start_position, end_position: INTEGER_32; format: EV_CHARACTER_FORMAT)
	hide
	insert_text (a_text: STRING_GENERAL)
	modify_paragraph (start_position, end_position: INTEGER_32; format: EV_PARAGRAPH_FORMAT; applicable_attributes: EV_PARAGRAPH_FORMAT_RANGE_INFORMATION)
	modify_region (start_position, end_position: INTEGER_32; format: EV_CHARACTER_FORMAT; applicable_attributes: EV_CHARACTER_FORMAT_RANGE_INFORMATION)
	paste (a_position: INTEGER_32)
	prepend_text (a_text: STRING_GENERAL)
	refresh_now
	remove_default_key_processing_handler
	remove_help_context
	remove_pebble
	remove_real_source
	remove_real_target
	remove_text
	remove_tooltip
	save_to_named_file (a_filename: FILE_NAME)
	scroll_to_end
	scroll_to_line (i: INTEGER_32)
	select_all
	select_lines (first_line, last_line: INTEGER_32)
	select_region (start_pos, end_pos: INTEGER_32)
	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_caret_position (a_caret_position: INTEGER_32)
	set_current_format (format: EV_CHARACTER_FORMAT)
	set_data (some_data: [like data] ANY)
	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_font (a_font: EV_FONT)
	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_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_minimum_width_in_characters (nb: 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_pointer_style (a_cursor: [like pointer_style] EV_POINTER_STYLE)
	set_real_source (dockable_source: EV_DOCKABLE_SOURCE)
	set_real_target (a_target: EV_DOCKABLE_TARGET)
	set_tab_width (a_width: INTEGER_32)
	set_target_menu_mode
	set_target_name (a_name: STRING_GENERAL)
	set_text (a_text: STRING_GENERAL)
	set_tooltip (a_tooltip: STRING_GENERAL)
	set_with_named_file (a_filename: FILE_NAME)
	show

Constraints
	buffer locked in a single mode