indexing
description: "[
A control in which the user can enter and edit rich text.
Note: Rich edit DLL needs to be loaded. See class WEL_RICH_EDIT_DLL.
All paragraph measurements are in twips. A twip is 1/1440 of
an inch or 1/20 of a point.
]"
legal: "See notice at end of class."
status: "See notice at end of class."
date: "$Date: 2007-07-10 17:31:52 -0700 (Tue, 10 Jul 2007) $"
revision: "$Revision: 69379 $"
class interface
WEL_RICH_EDIT
create
make (a_parent: WEL_WINDOW; a_name: STRING_GENERAL; a_x, a_y, a_width, a_height, an_id: INTEGER_32)
require
a_parent_not_void: a_parent /= Void
a_parent_exists: a_parent.exists
a_name_not_void: a_name /= Void
ensure
parent_set: parent = a_parent
exists: exists
name_set: text.is_equal (a_name)
id_set: id = an_id
make_by_id (a_parent: WEL_DIALOG; an_id: INTEGER_32)
`an_id'`a_parent'
WEL_CONTROL
require WEL_CONTROL
a_parent_not_void: a_parent /= Void
positive_id: an_id > 0
ensure WEL_CONTROL
parent_set: parent = a_parent
id_set: id = an_id
feature
background_color: WEL_COLOR_REF
WEL_EDIT
require WEL_COLOR_CONTROL
exists: exists
ensure WEL_COLOR_CONTROL
background_color_not_void: Result /= Void
color_3ddkshadow: INTEGER_32 is 21
WEL_COLOR_CONSTANTS
color_3dface: INTEGER_32 is 15
WEL_COLOR_CONSTANTSColor_btnface
WEL_COLOR_CONSTANTS
color_3dhighlight: INTEGER_32 is 20
WEL_COLOR_CONSTANTSColor_3dhilightColor_btnhilightColor_btnhighlight
WEL_COLOR_CONSTANTS
color_3dhilight: INTEGER_32 is 20
WEL_COLOR_CONSTANTSColor_3dhighlightColor_btnhilightColor_btnhighlight
WEL_COLOR_CONSTANTS
color_3dlight: INTEGER_32 is 22
WEL_COLOR_CONSTANTS
color_3dshadow: INTEGER_32 is 16
WEL_COLOR_CONSTANTSColor_btnshadow
WEL_COLOR_CONSTANTS
color_activeborder: INTEGER_32 is 10
WEL_COLOR_CONSTANTS
color_activecaption: INTEGER_32 is 2
WEL_COLOR_CONSTANTS
color_appworkspace: INTEGER_32 is 12
WEL_COLOR_CONSTANTS
color_background: INTEGER_32 is 1
WEL_COLOR_CONSTANTSColor_desktop
WEL_COLOR_CONSTANTS
color_btnface: INTEGER_32 is 15
WEL_COLOR_CONSTANTSColor_3dface
WEL_COLOR_CONSTANTS
color_btnhighlight: INTEGER_32 is 20
WEL_COLOR_CONSTANTSColor_3dhilightColor_3dhighlightColor_btnhilight
WEL_COLOR_CONSTANTS
color_btnhilight: INTEGER_32 is 20
WEL_COLOR_CONSTANTSColor_3dhilightColor_3dhighlightColor_btnhighlight
WEL_COLOR_CONSTANTS
color_btnshadow: INTEGER_32 is 16
WEL_COLOR_CONSTANTSColor_3dshadow
WEL_COLOR_CONSTANTS
color_btntext: INTEGER_32 is 18
WEL_COLOR_CONSTANTS
color_captiontext: INTEGER_32 is 9
WEL_COLOR_CONSTANTS
color_desktop: INTEGER_32 is 1
WEL_COLOR_CONSTANTSColor_background
WEL_COLOR_CONSTANTS
color_gradientactivecaption: INTEGER_32 is 27
WEL_COLOR_CONSTANTS
color_gradientinactivecaption: INTEGER_32 is 28
WEL_COLOR_CONSTANTS
color_graytext: INTEGER_32 is 17
WEL_COLOR_CONSTANTS
color_highlight: INTEGER_32 is 13
WEL_COLOR_CONSTANTS
color_highlighttext: INTEGER_32 is 14
WEL_COLOR_CONSTANTS
color_hotlight: INTEGER_32 is 26
WEL_COLOR_CONSTANTS
color_inactiveborder: INTEGER_32 is 11
WEL_COLOR_CONSTANTS
color_inactivecaption: INTEGER_32 is 3
WEL_COLOR_CONSTANTS
color_inactivecaptiontext: INTEGER_32 is 19
WEL_COLOR_CONSTANTS
color_infobk: INTEGER_32 is 24
WEL_COLOR_CONSTANTS
color_infotext: INTEGER_32 is 23
WEL_COLOR_CONSTANTS
color_menu: INTEGER_32 is 4
WEL_COLOR_CONSTANTS
color_menubar: INTEGER_32 is 30
Color_menu
WEL_COLOR_CONSTANTS
color_menuhilight: INTEGER_32 is 29
WEL_COLOR_CONSTANTS
color_menutext: INTEGER_32 is 7
WEL_COLOR_CONSTANTS
color_scrollbar: INTEGER_32 is 0
WEL_COLOR_CONSTANTS
color_window: INTEGER_32 is 5
WEL_COLOR_CONSTANTS
color_windowframe: INTEGER_32 is 6
WEL_COLOR_CONSTANTS
color_windowtext: INTEGER_32 is 8
WEL_COLOR_CONSTANTS
commands: WEL_COMMAND_MANAGER
WEL_WINDOW
default_processing: BOOLEAN
WEL_RETURN_VALUE
font: WEL_FONT
WEL_CONTROL
require WEL_CONTROL
exists: exists
ensure WEL_CONTROL
result_not_void: Result /= Void
foreground_color: WEL_COLOR_REF
WEL_STATIC
require WEL_COLOR_CONTROL
exists: exists
ensure WEL_COLOR_CONTROL
foreground_color_not_void: Result /= Void
generating_type: STRING_8
ANY
ensure ANY
generating_type_not_void: Result /= Void
generating_type_not_empty: not Result.is_empty
generator: STRING_8
ANY
ensure ANY
generator_not_void: Result /= Void
generator_not_empty: not Result.is_empty
has_return_value: BOOLEAN
WEL_RETURN_VALUE
id: INTEGER_32
WEL_CONTROL
item: POINTER
WEL_ANY
message_return_value: POINTER
WEL_RETURN_VALUE
require WEL_RETURN_VALUE
has_return_value: has_return_value
parent: WEL_WINDOW
WEL_WINDOW
feature
frozen deep_equal (some: ?ANY; other: like arg #1): BOOLEAN
`some'`other'
ANY
ensure ANY
shallow_implies_deep: standard_equal (some, other) implies Result
both_or_none_void: (some = Void) implies (Result = (other = Void))
same_type: (Result and (some /= Void)) implies (other /= Void and then some.same_type (other))
symmetric: Result implies deep_equal (other, some)
frozen equal (some: ?ANY; other: like arg #1): BOOLEAN
`some'`other'
ANY
ensure ANY
definition: Result = (some = Void and other = Void) or else ((some /= Void and other /= Void) and then some.is_equal (other))
frozen is_deep_equal (other: WEL_RICH_EDIT): BOOLEAN
`Current'`other'
ANY
require ANY
other_not_void: other /= Void
ensure ANY
shallow_implies_deep: standard_is_equal (other) implies Result
same_type: Result implies same_type (other)
symmetric: Result implies other.is_deep_equal (Current)
is_equal (other: WEL_RICH_EDIT): BOOLEAN
`other'
ANY
require ANY
other_not_void: other /= Void
ensure ANY
symmetric: Result implies other.is_equal (Current)
consistent: standard_is_equal (other) implies Result
frozen standard_equal (some: ?ANY; other: like arg #1): BOOLEAN
`some'`other'
ANY
ensure ANY
definition: Result = (some = Void and other = Void) or else ((some /= Void and other /= Void) and then some.standard_is_equal (other))
frozen standard_is_equal (other: WEL_RICH_EDIT): BOOLEAN
`other'
ANY
require ANY
other_not_void: other /= Void
ensure ANY
same_type: Result implies same_type (other)
symmetric: Result implies other.standard_is_equal (Current)
feature
absolute_x: INTEGER_32
WEL_WINDOW
require WEL_WINDOW
exists: exists
ensure WEL_WINDOW
Result = window_rect.x
absolute_y: INTEGER_32
WEL_WINDOW
require WEL_WINDOW
exists: exists
ensure WEL_WINDOW
Result = window_rect.y
background_brush: WEL_BRUSH
WEL_WINDOW
ensure WEL_WINDOW
new_object: Result /= Void implies Result /= background_brush
can_undo: BOOLEAN
WEL_EDIT
require WEL_EDIT
exists: exists
captured_window: WEL_WINDOW
WEL_WINDOW
require WEL_WINDOW
exists: exists
window_captured: window_captured
caret_position: INTEGER_32
require WEL_EDIT
exists: exists
character_index_from_position (a_x, a_y: INTEGER_32): INTEGER_32
`a_x'`a_y'
require
exists: exists
a_x_large_enough: a_x >= 0
a_y_large_enough: a_y >= 0
client_rect: WEL_RECT
WEL_WINDOW
require WEL_WINDOW
exists: exists
ensure WEL_WINDOW
result_not_void: Result /= Void
command (message: INTEGER_32): WEL_COMMAND
`message'
WEL_WINDOW
require WEL_WINDOW
positive_message: message >= 0
command_exists: command_exists (message)
ensure WEL_WINDOW
result_not_void: Result /= Void
command_argument (message: INTEGER_32): ANY
`message'
WEL_WINDOW
require WEL_WINDOW
positive_message: message >= 0
command_exists: command_exists (message)
command_exists (message: INTEGER_32): BOOLEAN
`message'
WEL_WINDOW
require WEL_WINDOW
positive_message: message >= 0
commands_enabled: BOOLEAN
WEL_WINDOW
conforms_to (other: ANY): BOOLEAN
`other'
ANY
require ANY
other_not_void: other /= Void
count: INTEGER_32
current_line_index: INTEGER_32
WEL_MULTIPLE_LINE_EDIT
require WEL_MULTIPLE_LINE_EDIT
exists: exists
ensure WEL_MULTIPLE_LINE_EDIT
positive_result: Result >= 0
current_line_number: INTEGER_32
WEL_MULTIPLE_LINE_EDIT
require WEL_MULTIPLE_LINE_EDIT
exists: exists
ensure WEL_MULTIPLE_LINE_EDIT
positive_result: Result >= 0
result_small_enough: Result < line_count
current_selection_character_format: WEL_CHARACTER_FORMAT
require
exists: exists
ensure
result_not_void: Result /= Void
default_character_format: WEL_CHARACTER_FORMAT
require
exists: exists
ensure
result_not_void: Result /= Void
enabled: BOOLEAN
WEL_WINDOW
require WEL_WINDOW
exists: exists
event_mask: INTEGER_32
require
exists: exists
ex_style: INTEGER_32
WEL_WINDOW
require WEL_WINDOW
exists: exists
exists: BOOLEAN
item
WEL_ANY
require WEL_COLOR_CONTROL
True
ensure WEL_ANY
Result = (item /= default_pointer)
first_visible_line: INTEGER_32
WEL_MULTIPLE_LINE_EDIT
require WEL_MULTIPLE_LINE_EDIT
exists: exists
ensure WEL_MULTIPLE_LINE_EDIT
positive_result: Result >= 0
result_small_enough: Result < line_count
focused_window: WEL_WINDOW
WEL_WINDOW
require WEL_WINDOW
exists: exists
formatting_rect: WEL_RECT
WEL_EDIT
require WEL_EDIT
exists: exists
ensure WEL_EDIT
result_not_void: Result /= Void
has_capture: BOOLEAN
WEL_WINDOW
require WEL_WINDOW
exists: exists
has_focus: BOOLEAN
WEL_WINDOW
require WEL_WINDOW
exists: exists
has_heavy_capture: BOOLEAN
WEL_WINDOW
has_horizontal_scroll_bar: BOOLEAN
WEL_WINDOW
require WEL_WINDOW
exists: exists
has_selection: BOOLEAN
require WEL_EDIT
exists: exists
has_system_font: BOOLEAN
WEL_CONTROL
require WEL_CONTROL
exists: exists
has_vertical_scroll_bar: BOOLEAN
WEL_WINDOW
require WEL_WINDOW
exists: exists
heavy_capture_activated: BOOLEAN
has_heavy_capture
WEL_WINDOW
height: INTEGER_32
WEL_WINDOW
require WEL_WINDOW
exists: exists
is_inside: BOOLEAN
WEL_WINDOW
line (i: INTEGER_32): STRING_32
`i'
WEL_MULTIPLE_LINE_EDIT
require WEL_MULTIPLE_LINE_EDIT
exists: exists
i_large_enough: i >= 0
i_small_enough: i < line_count
ensure WEL_MULTIPLE_LINE_EDIT
result_exists: Result /= Void
line_count: INTEGER_32
WEL_MULTIPLE_LINE_EDIT
require WEL_MULTIPLE_LINE_EDIT
exists: exists
ensure WEL_MULTIPLE_LINE_EDIT
positive_result: Result >= 0
line_from_char (i: INTEGER_32): INTEGER_32
`i'
WEL_MULTIPLE_LINE_EDIT
require WEL_MULTIPLE_LINE_EDIT
exists: exists
ensure WEL_MULTIPLE_LINE_EDIT
positive_result: Result >= 0
line_index (i: INTEGER_32): INTEGER_32
`i'
WEL_MULTIPLE_LINE_EDIT
require WEL_MULTIPLE_LINE_EDIT
exists: exists
i_large_enough: i >= 0
i_small_enough: i < line_count
ensure WEL_MULTIPLE_LINE_EDIT
positive_result: Result >= 0
line_length (i: INTEGER_32): INTEGER_32
`i'
WEL_MULTIPLE_LINE_EDIT
require WEL_MULTIPLE_LINE_EDIT
exists: exists
i_large_enough: i >= 0
i_small_enough: i < line_count
ensure WEL_MULTIPLE_LINE_EDIT
positive_result: Result >= 0
result_ok: Result = line (i).count
line_number_from_position (a_pos: INTEGER_32): INTEGER_32
require
exists: exists
a_pos_large_enough: a_pos >= 0
maximal_height: INTEGER_32
WEL_WINDOW
ensure WEL_WINDOW
result_large_enough: Result >= minimal_height
maximal_width: INTEGER_32
WEL_WINDOW
ensure WEL_WINDOW
result_large_enough: Result >= minimal_width
maximized: BOOLEAN
WEL_WINDOW
require WEL_WINDOW
exists: exists
minimal_height: INTEGER_32
WEL_WINDOW
ensure WEL_WINDOW
positive_result: Result >= 0
result_small_enough: Result <= maximal_height
minimal_width: INTEGER_32
WEL_WINDOW
ensure WEL_WINDOW
positive_result: Result >= 0
result_small_enough: Result <= maximal_width
minimized: BOOLEAN
WEL_WINDOW
require WEL_WINDOW
exists: exists
modified: BOOLEAN
WEL_EDIT
require WEL_EDIT
exists: exists
options: INTEGER_32
placement: WEL_WINDOW_PLACEMENT
WEL_WINDOW
require WEL_WINDOW
exists: exists
ensure WEL_WINDOW
result_not_void: Result /= Void
position_from_character_index (character_index: INTEGER_32): WEL_POINT
`character_index'
require
exists: exists
index_large_enough: character_index >= 0
index_small_enough: character_index <=