Automatic generation produced by ISE Eiffel
note description: "[ Widget which is a combination of an EV_TREE and an EV_MULTI_COLUMN_LIST. MSWindows implementation. ]" legal: "See notice at end of class." status: "See notice at end of class." date: "$Date: 2013-05-30 13:33:11 -0800 (Thu, 30 May 2013) $" revision: "$Revision: 92653 $" class interface EV_GRID_IMP create make -- Initialize Current. require -- from EV_ANY_I True ensure -- from EV_ANY_I is_initialized: get_state_flag (Is_initialized_flag) feature -- Initialization make -- Initialize Current. require -- from EV_ANY_I True ensure -- from EV_ANY_I is_initialized: get_state_flag (Is_initialized_flag) feature -- Access accept_cursor: detachable EV_POINTER_STYLE -- Accept cursor set by user. -- To be displayed when the screen pointer is over a target that accepts -- `pebble` during pick and drop. -- (from EV_PICK_AND_DROPABLE_I) actual_drop_target_agent: detachable FUNCTION [INTEGER_32, INTEGER_32, detachable EV_ABSTRACT_PICK_AND_DROPABLE] -- Overrides default drop target on a certain position. -- If Void, will use the default drop target. -- Always void if Current is not a widget. -- (from EV_WIDGET_I) are_tree_node_connectors_shown: BOOLEAN -- Are connectors between tree nodes shown in Current? -- (from EV_GRID_I) awaiting_movement: BOOLEAN -- Are we currently awaiting the movement threshold to -- be reached for as drag and drop or dockable move? -- (from EV_SHARED_TRANSPORT_IMP) frozen background_color: EV_COLOR -- Color displayed behind foreground features. -- (from EV_COLORIZABLE_I) background_color_internal: detachable EV_COLOR -- Color used for the background of Current. -- (from EV_WIDGET_IMP) require -- from EV_COLORIZABLE_I True background_pixmap: detachable EV_PIXMAP -- Result is pixmap used for background. -- (from EV_CONTAINER_IMP) require -- from EV_PIXMAPABLE_I True background_pixmap_imp: detachable EV_PIXMAP_IMP -- Pixmap used for the background of the widget -- (from EV_CONTAINER_IMP) caption_font: WEL_FONT -- Caption font -- (from WEL_SHARED_FONTS) ensure -- from WEL_SHARED_FONTS result_exists: Result /= Void and then Result.exists capture_enabled: BOOLEAN -- Is the mouse currently captured? -- See constants Capture_xxxx at the end of the class. -- (from EV_PICK_AND_DROPABLE_IMP) children: LIST [WEL_WINDOW] -- Construct a linear representation of children. -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists ensure -- from WEL_COMPOSITE_WINDOW result_not_void: Result /= Void client_height: INTEGER_32 -- Height of the client area of container -- Result in pixels. -- (from EV_CONTAINER_IMP) require -- from EV_CONTAINER_I True ensure -- from EV_CONTAINER_I positive: Result >= 0 client_width: INTEGER_32 -- Width of the client area of container. -- Result in pixels. -- (from EV_CONTAINER_IMP) require -- from EV_CONTAINER_I True ensure -- from EV_CONTAINER_I positive: Result >= 0 client_x: INTEGER_32 -- Left of the client area. -- Result in pixels. -- (from EV_CONTAINER_IMP) client_y: INTEGER_32 -- Top of the client area. -- Result in pixels. -- (from EV_CONTAINER_IMP) Color_3ddkshadow: INTEGER_32 = 21 -- Dark shadow for three-dimensional display elements. -- -- Declared in Windows as COLOR_3DDKSHADOW -- (from WEL_COLOR_CONSTANTS) Color_3dface: INTEGER_32 = 15 -- Face color for three-dimensional display elements and -- for dialog box backgrounds. -- -- Declared in Windows as COLOR_3DFACE -- Was declared in {WEL_COLOR_CONSTANTS} as synonym of `color_btnface`. -- (from WEL_COLOR_CONSTANTS) Color_3dhighlight: INTEGER_32 = 20 -- Highlight color for three-dimensional display elements -- (for edges facing the light source.) -- -- Declared in Windows as COLOR_3DHILIGHT -- Was declared in {WEL_COLOR_CONSTANTS} as synonym of `color_3dhilight`, `color_btnhilight` and `color_btnhighlight`. -- (from WEL_COLOR_CONSTANTS) Color_3dhilight: INTEGER_32 = 20 -- Highlight color for three-dimensional display elements -- (for edges facing the light source.) -- -- Declared in Windows as COLOR_3DHILIGHT -- Was declared in {WEL_COLOR_CONSTANTS} as synonym of `color_3dhighlight`, `color_btnhilight` and `color_btnhighlight`. -- (from WEL_COLOR_CONSTANTS) Color_3dlight: INTEGER_32 = 22 -- Light color for three-dimensional display elements -- (for edges facing the light source.) -- -- Declared in Windows as COLOR_3DLIGHT -- (from WEL_COLOR_CONSTANTS) Color_3dshadow: INTEGER_32 = 16 -- Shadow color for three-dimensional display elements -- (for edges facing away from the light source). -- -- Declared in Windows as COLOR_3DSHADOW -- Was declared in {WEL_COLOR_CONSTANTS} as synonym of `color_btnshadow`. -- (from WEL_COLOR_CONSTANTS) Color_activeborder: INTEGER_32 = 10 -- Active window border. -- -- Declared in Windows as COLOR_ACTIVEBORDER -- (from WEL_COLOR_CONSTANTS) Color_activecaption: INTEGER_32 = 2 -- Active window title bar. -- -- Windows 98/Me, Windows 2000 or later: -- Specifies the left side color in the color gradient of an active -- window's title bar if the gradient effect is enabled. -- -- Declared in Windows as COLOR_ACTIVECAPTION -- (from WEL_COLOR_CONSTANTS) Color_appworkspace: INTEGER_32 = 12 -- Background color of multiple document interface (MDI) applications. -- -- Declared in Windows as COLOR_APPWORKSPACE -- (from WEL_COLOR_CONSTANTS) Color_background: INTEGER_32 = 1 -- Desktop. -- -- Declared in Windows as COLOR_BACKGROUND -- Was declared in {WEL_COLOR_CONSTANTS} as synonym of `color_desktop`. -- (from WEL_COLOR_CONSTANTS) Color_btnface: INTEGER_32 = 15 -- Face color for three-dimensional display elements and -- for dialog box backgrounds. -- -- Declared in Windows as COLOR_3DFACE -- Was declared in {WEL_COLOR_CONSTANTS} as synonym of `color_3dface`. -- (from WEL_COLOR_CONSTANTS) Color_btnhighlight: INTEGER_32 = 20 -- Highlight color for three-dimensional display elements -- (for edges facing the light source.) -- -- Declared in Windows as COLOR_3DHILIGHT -- Was declared in {WEL_COLOR_CONSTANTS} as synonym of `color_3dhilight`, `color_3dhighlight` and `color_btnhilight`. -- (from WEL_COLOR_CONSTANTS) Color_btnhilight: INTEGER_32 = 20 -- Highlight color for three-dimensional display elements -- (for edges facing the light source.) -- -- Declared in Windows as COLOR_3DHILIGHT -- Was declared in {WEL_COLOR_CONSTANTS} as synonym of `color_3dhilight`, `color_3dhighlight` and `color_btnhighlight`. -- (from WEL_COLOR_CONSTANTS) Color_btnshadow: INTEGER_32 = 16 -- Shadow color for three-dimensional display elements -- (for edges facing away from the light source). -- -- Declared in Windows as COLOR_3DSHADOW -- Was declared in {WEL_COLOR_CONSTANTS} as synonym of `color_3dshadow`. -- (from WEL_COLOR_CONSTANTS) Color_btntext: INTEGER_32 = 18 -- Text on push buttons. -- -- Declared in Windows as COLOR_BTNTEXT -- (from WEL_COLOR_CONSTANTS) Color_captiontext: INTEGER_32 = 9 -- Text in caption, size box, and scroll bar arrow box. -- -- Declared in Windows as COLOR_CAPTIONTEXT -- (from WEL_COLOR_CONSTANTS) Color_desktop: INTEGER_32 = 1 -- Desktop. -- -- Declared in Windows as COLOR_BACKGROUND -- Was declared in {WEL_COLOR_CONSTANTS} as synonym of `color_background`. -- (from WEL_COLOR_CONSTANTS) Color_gradientactivecaption: INTEGER_32 = 27 -- Windows 98/Me, Windows 2000 or later: -- Right side color in the color gradient of an active window's -- title bar. COLOR_ACTIVECAPTION specifies the left side color. -- Use SPI_GETGRADIENTCAPTIONS with the SystemParametersInfo -- function to determine whether the gradient effect is enabled. -- -- Declared in Windows as COLOR_GRADIENTACTIVECAPTION -- (from WEL_COLOR_CONSTANTS) Color_gradientinactivecaption: INTEGER_32 = 28 -- Windows 98/Me, Windows 2000 or later: -- Right side color in the color gradient of an inactive window's -- title bar. COLOR_INACTIVECAPTION specifies the left side color. -- -- Declared in Windows as COLOR_GRADIENTINACTIVECAPTION -- (from WEL_COLOR_CONSTANTS) Color_graytext: INTEGER_32 = 17 -- Grayed (disabled) text. This color is set to 0 if the current -- display driver does not support a solid gray color. -- -- Declared in Windows as COLOR_GRAYTEXT -- (from WEL_COLOR_CONSTANTS) Color_highlight: INTEGER_32 = 13 -- Item(s) selected in a control. -- -- Declared in Windows as COLOR_HIGHLIGHT -- (from WEL_COLOR_CONSTANTS) Color_highlighttext: INTEGER_32 = 14 -- Text of item(s) selected in a control. -- -- Declared in Windows as COLOR_HIGHLIGHTTEXT -- (from WEL_COLOR_CONSTANTS) Color_hotlight: INTEGER_32 = 26 -- Windows 98/Me, Windows 2000 or later: -- Color for a hot-tracked item. Single clicking a hot-tracked -- item executes the item. -- -- Declared in Windows as COLOR_HOTLIGHT -- (from WEL_COLOR_CONSTANTS) Color_inactiveborder: INTEGER_32 = 11 -- Inactive window border. -- -- Declared in Windows as COLOR_INACTIVEBORDER -- (from WEL_COLOR_CONSTANTS) Color_inactivecaption: INTEGER_32 = 3 -- Inactive window caption. -- -- Windows 98/Me, Windows 2000 or later: -- Specifies the left side color in the color gradient of an inactive -- window's title bar if the gradient effect is enabled. -- -- Declared in Windows as COLOR_INACTIVECAPTION -- (from WEL_COLOR_CONSTANTS) Color_inactivecaptiontext: INTEGER_32 = 19 -- Color of text in an inactive caption. -- -- Declared in Windows as COLOR_INACTIVECAPTIONTEXT -- (from WEL_COLOR_CONSTANTS) Color_infobk: INTEGER_32 = 24 -- Background color for tooltip controls. -- -- Declared in Windows as COLOR_INFOBK -- (from WEL_COLOR_CONSTANTS) Color_infotext: INTEGER_32 = 23 -- Text color for tooltip controls. -- -- Declared in Windows as COLOR_INFOTEXT -- (from WEL_COLOR_CONSTANTS) Color_menu: INTEGER_32 = 4 -- Menu background. -- -- Declared in Windows as COLOR_MENU -- (from WEL_COLOR_CONSTANTS) Color_menubar: INTEGER_32 = 30 -- Windows XP: -- The background color for the menu bar when menus appear as -- flat menus (see SystemParametersInfo). However, `color_menu` -- continues to specify the background color of the menu popup. -- -- Declared in Windows as COLOR_MENUBAR -- (from WEL_COLOR_CONSTANTS) Color_menuhilight: INTEGER_32 = 29 -- Windows XP: -- The color used to highlight menu items when the menu appears -- as a flat menu (see SystemParametersInfo). The highlighted -- menu item is outlined with COLOR_HIGHLIGHT. -- -- Declared in Windows as COLOR_MENUHILIGHT -- (from WEL_COLOR_CONSTANTS) Color_menutext: INTEGER_32 = 7 -- Text in menus. -- -- Declared in Windows as COLOR_MENUTEXT -- (from WEL_COLOR_CONSTANTS) Color_scrollbar: INTEGER_32 = 0 -- Scroll bar gray area. -- -- Declared in Windows as COLOR_SCROLLBAR -- (from WEL_COLOR_CONSTANTS) Color_window: INTEGER_32 = 5 -- Window background. -- -- Declared in Windows as COLOR_WINDOW -- (from WEL_COLOR_CONSTANTS) Color_windowframe: INTEGER_32 = 6 -- Window frame. -- -- Declared in Windows as COLOR_WINDOWFRAME -- (from WEL_COLOR_CONSTANTS) Color_windowtext: INTEGER_32 = 8 -- Text in windows. -- -- Declared in Windows as COLOR_WINDOWTEXT -- (from WEL_COLOR_CONSTANTS) column (a_column: INTEGER_32): EV_GRID_COLUMN -- Column at index a_column. -- (from EV_GRID_I) require -- from EV_GRID_I a_column_positive: a_column > 0 a_column_not_greater_than_column_count: a_column <= column_count ensure -- from EV_GRID_I column_not_void: Result /= Void column_at_virtual_position (a_virtual_x: INTEGER_32): detachable EV_GRID_COLUMN -- Column at virtual x position a_virtual_x. -- (from EV_GRID_I) commands: detachable WEL_COMMAND_MANAGER -- Command manager associated to the current window. -- (from WEL_WINDOW) configurable_target_menu_handler: detachable PROCEDURE [EV_MENU, ARRAYED_LIST [EV_PND_TARGET_DATA], EV_PICK_AND_DROPABLE, detachable ANY] -- (from EV_PICK_AND_DROPABLE_I) conforming_pick_actions: EV_NOTIFY_ACTION_SEQUENCE -- Actions to be performed when a pebble that fits here is picked. -- (from EV_GRID_I) require -- from EV_PICK_AND_DROPABLE_ACTION_SEQUENCES_I True ensure -- from EV_PICK_AND_DROPABLE_ACTION_SEQUENCES_I not_void: Result /= Void count: INTEGER_32 -- Number of elements in Current. -- (from EV_SINGLE_CHILD_CONTAINER_IMP) require -- from EV_CONTAINER_I not_destroyed: not is_destroyed Cs_bytealignclient: INTEGER_32 = 4096 -- (from WEL_CS_CONSTANTS) Cs_bytealignwindow: INTEGER_32 = 8192 -- (from WEL_CS_CONSTANTS) Cs_classdc: INTEGER_32 = 64 -- (from WEL_CS_CONSTANTS) Cs_dblclks: INTEGER_32 = 8 -- (from WEL_CS_CONSTANTS) Cs_dropshadow: INTEGER_32 = 131072 -- Drop shadow effect -- This value is not supported until Windows XP. -- (from WEL_CS_CONSTANTS) Cs_globalclass: INTEGER_32 = 16384 -- (from WEL_CS_CONSTANTS) Cs_hredraw: INTEGER_32 = 2 -- (from WEL_CS_CONSTANTS) Cs_ime: INTEGER_32 = 65536 -- Input Method Editor -- (from WEL_CS_CONSTANTS) Cs_keycvtwindow: INTEGER_32 = 4 -- Not defined any more for some -- C compilers, returns old defined value -- (from WEL_CS_CONSTANTS) Cs_noclose: INTEGER_32 = 512 -- (from WEL_CS_CONSTANTS) Cs_nokeycvt: INTEGER_32 = 256 -- Not defined any more for some -- C compilers, returns old defined value -- (from WEL_CS_CONSTANTS) Cs_owndc: INTEGER_32 = 32 -- (from WEL_CS_CONSTANTS) Cs_parentdc: INTEGER_32 = 128 -- (from WEL_CS_CONSTANTS) Cs_savebits: INTEGER_32 = 2048 -- (from WEL_CS_CONSTANTS) Cs_vredraw: INTEGER_32 = 1 -- (from WEL_CS_CONSTANTS) Cursor_on_widget: CELL [detachable EV_WIDGET_IMP] -- This cell contains the widget_imp that currently -- has the pointer of the mouse. As it is a once -- feature, it is a shared data. -- it is used for the mouse_enter and mouse_leave -- events. -- (from EV_WIDGET_IMP) require -- from EV_PICK_AND_DROPABLE_IMP True ensure then -- from EV_WIDGET_IMP result_exists: Result /= Void default_key_processing_handler: detachable PREDICATE [EV_KEY] -- Agent used to determine whether the default key processing should occur for Current. -- If agent returns True then default key processing continues as normal, False prevents -- default key processing from occurring. -- (from EV_WIDGET_I) Default_parent: EV_INTERNAL_SILLY_WINDOW_IMP -- A default parent for creation of Current. -- (from EV_WIDGET_IMP) require -- from EV_WEL_CONTROL_CONTAINER_IMP True ensure -- from EV_WIDGET_IMP valid_parent: Result /= Void default_processing: BOOLEAN -- (from WEL_RETURN_VALUE) deny_cursor: detachable EV_POINTER_STYLE -- Deny cursor set by user. -- To be displayed when the screen pointer is not over a valid target. -- (from EV_PICK_AND_DROPABLE_I) displayed_column (i: INTEGER_32): EV_GRID_COLUMN -- i-th displayed column. May not correspond -- to `column` if one or more columns have been --- hidden via `hide`. -- (from EV_GRID_I) require -- from EV_GRID_I i_positive: i > 0 i_column_not_greater_than_displayed_column_count: i <= displayed_column_count ensure -- from EV_GRID_I column_not_void: Result /= Void Drag_and_drop_starting_movement: INTEGER_32 = 3 -- Pointer movement in pixels required to start a drag and drop. -- (from EV_SHARED_TRANSPORT_IMP) drop_actions: EV_PND_ACTION_SEQUENCE -- Actions to be performed when a pebble is dropped here. -- (from EV_GRID_I) require -- from EV_PICK_AND_DROPABLE_ACTION_SEQUENCES_I True ensure -- from EV_PICK_AND_DROPABLE_ACTION_SEQUENCES_I not_void: Result /= Void dynamic_content_function: detachable FUNCTION [INTEGER_32, INTEGER_32, EV_GRID_ITEM] -- Function which computes the item that resides in a particular position of the -- grid while `is_content_partially_dynamic` or `is_content_completely_dynamic. -- (from EV_GRID_I) ev_application: EV_APPLICATION -- Current application if created yet. -- (from EV_SHARED_APPLICATION) require -- from EV_SHARED_APPLICATION application_exists: attached Shared_environment.application same_processor_as_application: Shared_environment.is_application_processor ev_separate_application: separate EV_APPLICATION -- Current application if created yet. -- (from EV_SHARED_APPLICATION) require -- from EV_SHARED_APPLICATION application_exists: attached Shared_environment.application Focus_on_widget: CELL [detachable EV_WIDGET_IMP] -- Widget that has currently the focus. -- (from EV_WIDGET_IMP) font: WEL_FONT -- Font with which the control is drawing its text. -- (from WEL_CONTROL_WINDOW) require -- from WEL_CONTROL_WINDOW exists: exists ensure -- from WEL_CONTROL_WINDOW result_not_void: Result /= Void frozen foreground_color: EV_COLOR -- Color of foreground features like text. -- (from EV_COLORIZABLE_I) foreground_color_internal: detachable EV_COLOR -- Color used for the foreground of Current. -- (from EV_WIDGET_IMP) require -- from EV_COLORIZABLE_I True generating_type: TYPE [detachable EV_GRID_IMP] -- Type of current object -- (type of which it is a direct instance) -- (from ANY) ensure -- from ANY generating_type_not_void: Result /= Void generator: STRING_8 -- Name of current object's generating class -- (base class of the type of which it is a direct instance) -- (from ANY) ensure -- from ANY generator_not_void: Result /= Void generator_not_empty: not Result.is_empty gui_font: WEL_FONT -- Default screen (WEL) font. -- (from WEL_SHARED_FONTS) ensure -- from WEL_SHARED_FONTS result_exists: Result /= Void and then Result.exists gw_child: INTEGER_32 -- (from WEL_GW_CONSTANTS) ensure -- from WEL_GW_CONSTANTS is_class: class gw_hwndfirst: INTEGER_32 -- (from WEL_GW_CONSTANTS) ensure -- from WEL_GW_CONSTANTS is_class: class gw_hwndlast: INTEGER_32 -- (from WEL_GW_CONSTANTS) ensure -- from WEL_GW_CONSTANTS is_class: class gw_hwndnext: INTEGER_32 -- (from WEL_GW_CONSTANTS) ensure -- from WEL_GW_CONSTANTS is_class: class gw_hwndprev: INTEGER_32 -- (from WEL_GW_CONSTANTS) ensure -- from WEL_GW_CONSTANTS is_class: class gw_owner: INTEGER_32 -- (from WEL_GW_CONSTANTS) ensure -- from WEL_GW_CONSTANTS is_class: class Gwl_exstyle: INTEGER_32 = -20 -- (from WEL_GWL_CONSTANTS) Gwl_style: INTEGER_32 = -16 -- (from WEL_GWL_CONSTANTS) has (v: like cell_item): BOOLEAN -- Does Current include v? -- (from EV_SINGLE_CHILD_CONTAINER_IMP) require -- from EV_CONTAINER_I True has_capture: BOOLEAN -- Does Current have capture? -- (from EV_GRID_I) require -- from EV_WIDGET_I True has_focus: BOOLEAN -- Does Current have focus? -- (from EV_GRID_I) require -- from EV_WIDGET_I True require -- from WEL_WINDOW exists: exists has_return_value: BOOLEAN -- Should the window procedure return a value? -- (from WEL_RETURN_VALUE) height: INTEGER_32 -- Height of Current. -- (from EV_WIDGET_IMP) require -- from EV_POSITIONED_I True require -- from EV_SIZEABLE_IMP not_is_destroyed: not is_destroyed help_context: detachable FUNCTION [EV_HELP_CONTEXT] -- Agent that evaluates to help context sent to help engine when help is requested -- (from EV_HELP_CONTEXTABLE_I) ensure -- from EV_HELP_CONTEXTABLE_I current_if_exists: internal_help_context /= Void implies Result = internal_help_context frozen hwnd_bottom: POINTER -- (from WEL_HWND_CONSTANTS) frozen hwnd_broadcast: POINTER -- (from WEL_HWND_CONSTANTS) frozen hwnd_message: POINTER -- (from WEL_HWND_CONSTANTS) frozen hwnd_notopmost: POINTER -- (from WEL_HWND_CONSTANTS) frozen hwnd_top: POINTER -- (from WEL_HWND_CONSTANTS) frozen hwnd_topmost: POINTER -- (from WEL_HWND_CONSTANTS) Icon_big: INTEGER_32 = 1 -- Declared in Windows as ICON_BIG -- (from WEL_ICON_CONSTANTS) Icon_small: INTEGER_32 = 0 -- Declared in Windows as ICON_SMALL -- (from WEL_ICON_CONSTANTS) Idabort: INTEGER_32 = 3 -- Abort button was selected. -- (from WEL_ID_CONSTANTS) idc_appstarting: POINTER -- (from WEL_IDC_CONSTANTS) idc_arrow: POINTER -- (from WEL_IDC_CONSTANTS) idc_cross: POINTER -- (from WEL_IDC_CONSTANTS) idc_hand: POINTER -- (from WEL_IDC_CONSTANTS) idc_help: POINTER -- (from WEL_IDC_CONSTANTS) idc_ibeam: POINTER -- (from WEL_IDC_CONSTANTS) idc_no: POINTER -- (from WEL_IDC_CONSTANTS) idc_sizeall: POINTER -- (from WEL_IDC_CONSTANTS) idc_sizenesw: POINTER -- (from WEL_IDC_CONSTANTS) idc_sizens: POINTER -- (from WEL_IDC_CONSTANTS) idc_sizenwse: POINTER -- (from WEL_IDC_CONSTANTS) idc_sizewe: POINTER -- (from WEL_IDC_CONSTANTS) idc_uparrow: POINTER -- (from WEL_IDC_CONSTANTS) idc_wait: POINTER -- (from WEL_IDC_CONSTANTS) Idcancel: INTEGER_32 = 2 -- Cancel button was selected. -- (from WEL_ID_CONSTANTS) frozen idi_application: POINTER -- (from WEL_IDI_CONSTANTS) ensure -- from WEL_IDI_CONSTANTS is_class: class frozen idi_asterisk: POINTER -- Was declared in {WEL_IDI_CONSTANTS} as synonym of `idi_information`. -- (from WEL_IDI_CONSTANTS) ensure -- from WEL_IDI_CONSTANTS is_class: class frozen idi_error: POINTER -- Was declared in {WEL_IDI_CONSTANTS} as synonym of `idi_hand`. -- (from WEL_IDI_CONSTANTS) ensure -- from WEL_IDI_CONSTANTS is_class: class frozen idi_exclamation: POINTER -- Was declared in {WEL_IDI_CONSTANTS} as synonym of `idi_warning`. -- (from WEL_IDI_CONSTANTS) ensure -- from WEL_IDI_CONSTANTS is_class: class frozen idi_hand: POINTER -- Was declared in {WEL_IDI_CONSTANTS} as synonym of `idi_error`. -- (from WEL_IDI_CONSTANTS) ensure -- from WEL_IDI_CONSTANTS is_class: class frozen idi_information: POINTER -- Was declared in {WEL_IDI_CONSTANTS} as synonym of `idi_asterisk`. -- (from WEL_IDI_CONSTANTS) ensure -- from WEL_IDI_CONSTANTS is_class: class frozen idi_question: POINTER -- (from WEL_IDI_CONSTANTS) ensure -- from WEL_IDI_CONSTANTS is_class: class frozen idi_warning: POINTER -- Was declared in {WEL_IDI_CONSTANTS} as synonym of `idi_exclamation`. -- (from WEL_IDI_CONSTANTS) ensure -- from WEL_IDI_CONSTANTS is_class: class Idignore: INTEGER_32 = 5 -- Ignore button was selected. -- (from WEL_ID_CONSTANTS) Idno: INTEGER_32 = 7 -- No button was selected. -- (from WEL_ID_CONSTANTS) Idok: INTEGER_32 = 1 -- OK button was selected. -- (from WEL_ID_CONSTANTS) Idretry: INTEGER_32 = 4 -- Retry button was selected. -- (from WEL_ID_CONSTANTS) Idyes: INTEGER_32 = 6 -- Yes button was selected. -- (from WEL_ID_CONSTANTS) interface_item: EV_WIDGET -- Current item but guaranteed attached for calling from interface only -- (from EV_CONTAINER_I) internal_pointer_style: EV_POINTER_STYLE -- Cursor displayed when screen pointer is over current widget, -- as seen from interface. -- (from EV_WIDGET_I) is_column_resize_immediate: BOOLEAN -- Is the user resizing of a reflected immediately in Current? -- If False, the column width is only updated upon completion of the resize. -- (from EV_GRID_I) is_content_partially_dynamic: BOOLEAN -- Is the content of Current partially dynamic? If True then -- whenever an item must be re-drawn and it is not already set within Current, -- then it is queried via content_requested_actions. The returned item is added -- to Current so the query only occurs once. -- (from EV_GRID_I) is_dock_executing: BOOLEAN -- Is Current in the process of a dockable transport? -- (from EV_DOCKABLE_SOURCE_I) is_dockable: BOOLEAN -- Is Current dockable? -- (from EV_DOCKABLE_SOURCE_I) is_external_docking_enabled: BOOLEAN -- Is Current able to be docked into an EV_DOCKABLE_DIALOG -- When there is no valid EV_DRAGABLE_TARGET upon completion -- of the transport? -- (from EV_DOCKABLE_SOURCE_I) is_external_docking_relative: BOOLEAN -- Will dockable dialog displayed when Current is docked externally -- be displayed relative to parent window of Current? -- Otherwise displayed as a standard window. -- (from EV_DOCKABLE_SOURCE_I) is_header_displayed: BOOLEAN -- Is the header displayed in Current. -- (from EV_GRID_I) is_horizontal_overscroll_enabled: BOOLEAN -- Does the virtual width of Current include the -- position of the final column plus the `viewable_width`. -- If True, this enables horizontal scrolling until the last column -- is at the very left of the viewable area. If False, scrolling -- may be performed until the last column is at the left of the viewable -- area. -- (from EV_GRID_I) is_horizontal_scrolling_per_item: BOOLEAN -- Is horizontal scrolling performed on a per-item basis? -- If True, each change of the horizontal scroll bar increments the horizontal -- offset by the current column width. -- If False, the scrolling is smooth on a per-pixel basis. -- (from EV_GRID_I) is_resizing_divider_enabled: BOOLEAN -- Is a vertical divider displayed during column resizing? -- (from EV_GRID_I) is_resizing_divider_solid: BOOLEAN -- Is resizing divider displayed during column resizing drawn as a solid line? -- If False, a dashed line style is used. -- (from EV_GRID_I) is_row_height_fixed: BOOLEAN -- Must all rows in Current have the same height? -- (from EV_GRID_I) is_vertical_overscroll_enabled: BOOLEAN -- Does the virtual height of Current include the -- position of the final row plus the `viewable_height`. -- If True, this enables vertical scrolling until the last row -- is at the very top of the viewable area. If False, scrolling -- may be performed until the last row is at the bottom of the viewable -- area. -- (from EV_GRID_I) is_vertical_scrolling_per_item: BOOLEAN -- Is vertical scrolling performed on a per-item basis? -- If True, each change of the vertical scroll bar increments the vertical -- offset by the current row height. -- If False, the scrolling is smooth on a per-pixel basis. -- (from EV_GRID_I) cell_item: detachable EV_WIDGET -- The child of Current. -- (from EV_SINGLE_CHILD_CONTAINER_IMP) wel_item: POINTER -- Generic Windows handle or structure pointer. -- Can be a HWND, HICON, RECT *, WNDCLASS *, etc... -- (from WEL_ANY) item (a_column: INTEGER_32; a_row: INTEGER_32): detachable EV_GRID_ITEM -- Cell at a_column and a_row position, Void if none. -- (from EV_GRID_I) require -- from EV_GRID_I a_column_positive: a_column > 0 a_column_not_greater_than_column_count: a_column <= column_count a_row_positive: a_row > 0 a_row_not_greater_than_row_count: a_row <= row_count item_at_virtual_position (a_virtual_x, a_virtual_y: INTEGER_32): detachable EV_GRID_ITEM -- Cell at virtual position a_virtual_x, a_virtual_y or -- Void if none. -- (from EV_GRID_I) item_imp: detachable EV_WIDGET_IMP -- `item`.implementation. -- (from EV_SINGLE_CHILD_CONTAINER_IMP) key_code_from_key_string (key_string: READABLE_STRING_GENERAL): INTEGER_32 -- Key code value from key_string -- (from EV_KEY_CONSTANTS) require -- from EV_KEY_CONSTANTS key_string_not_void: key_string /= Void Key_strings: ARRAY [STRING_32] -- String representations of all key codes. -- (from EV_KEY_CONSTANTS) locked_indexes: ARRAYED_LIST [EV_GRID_LOCKED_I] -- Sorted array of all columns and rows currently locked. -- (from EV_GRID_I) Maximum_buffered_string_size: INTEGER_32 = 10000 -- Maximum size of string permitting a shared WEL_STRING object to -- be returned by `wel_string_restricted`. -- (from WEL_SHARED_TEMPORARY_OBJECTS) maximum_virtual_x_position: INTEGER_32 -- Maximum permitted virtual x position based on current dimensions and properties. -- Properties that affect this value are `is_vertical_scrolling_per_item` and -- `is_vertical_overscroll_enabled`. -- (from EV_GRID_I) ensure -- from EV_GRID_I result_non_negative: Result >= 0 maximum_virtual_y_position: INTEGER_32 -- Maximum permitted virtual y position based on current properties. -- Properties that affect this value are `is_horizontal_scrolling_per_item` and -- `is_horizontal_overscroll_enabled`. -- (from EV_GRID_I) ensure -- from EV_GRID_I result_non_negative: Result >= 0 Mb_abortretryignore: INTEGER_32 = 2 -- (from WEL_MB_CONSTANTS) Mb_applmodal: INTEGER_32 = 0 -- (from WEL_MB_CONSTANTS) Mb_default_desktop_only: INTEGER_32 = 131072 -- (from WEL_MB_CONSTANTS) Mb_defbutton1: INTEGER_32 = 0 -- (from WEL_MB_CONSTANTS) Mb_defbutton2: INTEGER_32 = 256 -- (from WEL_MB_CONSTANTS) Mb_defbutton3: INTEGER_32 = 512 -- (from WEL_MB_CONSTANTS) Mb_defmask: INTEGER_32 = 3840 -- (from WEL_MB_CONSTANTS) Mb_help: INTEGER_32 = 16384 -- (from WEL_MB_CONSTANTS) Mb_iconasterisk: INTEGER_32 = 64 -- (from WEL_MB_CONSTANTS) Mb_iconerror: INTEGER_32 = 16 -- Same as `mb_iconhand`. -- (from WEL_MB_CONSTANTS) Mb_iconexclamation: INTEGER_32 = 48 -- (from WEL_MB_CONSTANTS) Mb_iconhand: INTEGER_32 = 16 -- (from WEL_MB_CONSTANTS) Mb_iconinformation: INTEGER_32 = 64 -- Same as `mb_iconasterisk`. -- (from WEL_MB_CONSTANTS) Mb_iconmask: INTEGER_32 = 240 -- (from WEL_MB_CONSTANTS) Mb_iconquestion: INTEGER_32 = 32 -- (from WEL_MB_CONSTANTS) Mb_iconstop: INTEGER_32 = 16 -- Same as `mb_iconhand`. -- (from WEL_MB_CONSTANTS) Mb_iconwarning: INTEGER_32 = 48 -- Same as `mb_iconexclamation`. -- (from WEL_MB_CONSTANTS) Mb_nofocus: INTEGER_32 = 32768 -- (from WEL_MB_CONSTANTS) Mb_ok: INTEGER_32 = 0 -- (from WEL_MB_CONSTANTS) Mb_okcancel: INTEGER_32 = 1 -- (from WEL_MB_CONSTANTS) Mb_retrycancel: INTEGER_32 = 5 -- (from WEL_MB_CONSTANTS) Mb_right: INTEGER_32 = 524288 -- (from WEL_MB_CONSTANTS) Mb_rtlreading: INTEGER_32 = 1048576 -- (from WEL_MB_CONSTANTS) Mb_setforeground: INTEGER_32 = 65536 -- (from WEL_MB_CONSTANTS) Mb_systemmodal: INTEGER_32 = 4096 -- (from WEL_MB_CONSTANTS) Mb_taskmodal: INTEGER_32 = 8192 -- (from WEL_MB_CONSTANTS) Mb_topmost: INTEGER_32 = 262144 -- (from WEL_MB_CONSTANTS) Mb_typemask: INTEGER_32 = 15 -- (from WEL_MB_CONSTANTS) Mb_usericon: INTEGER_32 = 128 -- (from WEL_MB_CONSTANTS) Mb_yesno: INTEGER_32 = 4 -- (from WEL_MB_CONSTANTS) Mb_yesnocancel: INTEGER_32 = 3 -- (from WEL_MB_CONSTANTS) menu: WEL_MENU -- Associated menu -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists has_menu: has_menu ensure -- from WEL_COMPOSITE_WINDOW result_not_void: Result /= Void menu_font: WEL_FONT -- Font used in menus -- (from WEL_SHARED_FONTS) ensure -- from WEL_SHARED_FONTS result_exists: Result /= Void and then Result.exists merged_radio_button_groups: detachable ARRAYED_LIST [EV_CONTAINER] -- Result is all other radio button groups -- merged with Current. -- (from EV_CONTAINER_I) ensure -- from EV_CONTAINER_I current_not_included: Result /= Void implies not Result.has (attached_interface) message_font: WEL_FONT -- Font used in message boxes -- (from WEL_SHARED_FONTS) ensure -- from WEL_SHARED_FONTS result_exists: Result /= Void and then Result.exists message_return_value: POINTER -- Return value of the window procedure. -- (from WEL_RETURN_VALUE) require -- from WEL_RETURN_VALUE has_return_value: has_return_value minimum_height: INTEGER_32 -- Lower bound on `height` in pixels. -- (from EV_SIZEABLE_CONTAINER_IMP) require -- from EV_POSITIONED_I True require -- from EV_SIZEABLE_IMP True minimum_width: INTEGER_32 -- Lower bound on `width` in pixels. -- (from EV_SIZEABLE_CONTAINER_IMP) require -- from EV_POSITIONED_I True require -- from EV_SIZEABLE_IMP True not_external_docking_enabled: BOOLEAN -- Attribute used for is_externally_dockable. We must implement -- is_externally_dockable this way as we have no easy solution to -- assign True to is_externally_dockable. -- (from EV_DOCKABLE_SOURCE_I) not_is_external_docking_relative: BOOLEAN -- Will dockable dialog displayed when Current is docked externally -- be displayed relative to parent window of Current? -- Otherwise displayed as a standard window. -- Internal reversed value of `is_external_docking_relative` as we cannot -- easily initialize a BOOLE to True in this case. -- (from EV_DOCKABLE_SOURCE_I) original_parent_position: INTEGER_32 -- Original position in parent. Required -- to restore widget later. -- (from EV_DOCKABLE_SOURCE_I) original_pressure: REAL_64 -- Hold the values passed to start transport so when a transport -- actually starts, with real_start_transport,these can be passed -- as arguments. -- (from EV_SHARED_TRANSPORT_IMP) original_x: INTEGER_32 -- (from EV_SHARED_TRANSPORT_IMP) original_x_tilt: REAL_64 -- Hold the values passed to start transport so when a transport -- actually starts, with real_start_transport,these can be passed -- as arguments. -- (from EV_SHARED_TRANSPORT_IMP) original_y: INTEGER_32 -- (from EV_SHARED_TRANSPORT_IMP) original_y_tilt: REAL_64 -- Hold the values passed to start transport so when a transport -- actually starts, with real_start_transport,these can be passed -- as arguments. -- (from EV_SHARED_TRANSPORT_IMP) parent: detachable EV_CONTAINER -- Parent of Current -- (from EV_WIDGET_IMP) require -- from EV_WIDGET_I True wel_parent: detachable WEL_WINDOW -- Parent window -- (from WEL_WINDOW) pebble: detachable ANY -- Data to be transported by pick and drop mechanism. -- (from EV_PICK_AND_DROPABLE_I) pebble_function: detachable FUNCTION [detachable ANY] -- Returns data to be transported by pick and drop mechanism. -- (from EV_PICK_AND_DROPABLE_I) pebble_positioning_enabled: BOOLEAN -- If True then pick and drop start coordinates are -- `pebble_x_position`, `pebble_y_position`. -- If False then pick and drop start coordinates are -- the pointer coordinates. -- (from EV_PICK_AND_DROPABLE_I) pebble_x_position: INTEGER_32 -- Initial x position for pick and drop relative to Current. -- (from EV_PICK_AND_DROPABLE_I) pebble_y_position: INTEGER_32 -- Initial y position for pick and drop relative to Current. -- (from EV_PICK_AND_DROPABLE_I) pick_actions: EV_PND_START_ACTION_SEQUENCE -- Actions to be performed when `pebble` is picked up. -- (from EV_GRID_I) require -- from EV_PICK_AND_DROPABLE_ACTION_SEQUENCES_I True ensure -- from EV_PICK_AND_DROPABLE_ACTION_SEQUENCES_I not_void: Result /= Void pick_ended_actions: EV_PND_FINISHED_ACTION_SEQUENCE -- Actions to be performed when a transport from Current ends. -- If transport completed successfully, then event data -- is target. If cancelled, then event data is Void. -- (from EV_GRID_I) require -- from EV_PICK_AND_DROPABLE_ACTION_SEQUENCES_I True ensure -- from EV_PICK_AND_DROPABLE_ACTION_SEQUENCES_I not_void: Result /= Void pixels_displayed_after_final_column: INTEGER_32 -- Width in pixels displayed after the final column of Current. -- If is_horizontal_overdraw_enabled this is `viewable_width` less the final column width. -- If not is_horizontal_overdraw_enabled and `is_horizontal_scrolling_per_item` this is -- the number of pixels required to ensure the first visible column is flush to the left of the -- viewable area of Current. -- (from EV_GRID_I) pixels_displayed_after_final_row: INTEGER_32 -- Height in pixels displayed after the final row of Current. -- If is_vertical_overdraw_enabled this is `viewable_height` less the final row height. -- If not is_vertical_overdraw_enabled and `is_vertical_scrolling_per_item` this is -- the number of pixels required to ensure the first visible row is flush to the top of the -- viewable area of Current. -- (from EV_GRID_I) ensure -- from EV_GRID_I result_non_negative: Result >= 0 result_no_more_than_viewable_height: Result <= viewable_height no_rows_contained_implies_result_is_viewable_height: row_count = 0 implies Result = viewable_height valid_result_with_rows_with_overdraw_with_fixed_row_height: row_count > 0 and is_row_height_fixed and is_vertical_overscroll_enabled implies Result = viewable_height - row_height valid_result_with_rows_when_per_pixel_scrolling_with_no_overdraw: row_count > 0 and not is_vertical_scrolling_per_item and not is_vertical_overscroll_enabled implies Result = 0 valid_result_with_fixed_height_rows_when_per_item_scrolling_and_no_overdraw: row_count > 0 and is_row_height_fixed and is_vertical_scrolling_per_item and is_vertical_scrolling_per_item and row (row_count).virtual_y_position + row_height > viewable_height and not is_vertical_overscroll_enabled implies Result <= row_height pointer_position: EV_COORDINATE -- Position of the screen pointer relative to Current. -- (from EV_WIDGET_IMP) require -- from EV_WIDGET_I True ensure -- from EV_WIDGET_I result_not_void: Result /= Void pointer_style: detachable EV_POINTER_STYLE -- Pointer displayed when the pointing device is over Current. -- (from EV_WIDGET_IMP) require -- from EV_WIDGET_I True require -- from EV_DOCKABLE_SOURCE_IMP True real_source: detachable EV_DOCKABLE_SOURCE -- Result is EV_DOCKABLE_SOURCE which should be -- dragged when docking begins on Current. -- (from EV_DOCKABLE_SOURCE_I) real_target: detachable EV_DOCKABLE_TARGET -- Result is target used during a dockable transport if -- mouse pointer is above Current. -- (from EV_WIDGET_I) remove_selection -- Ensure that `selected_rows` and `selected_items` are empty. -- (from EV_GRID_I) ensure -- from EV_GRID_I selected_items_empty: selected_items.is_empty selected_rows_empty: selected_rows.is_empty selected_columns_empty: selected_columns.is_empty row (a_row: INTEGER_32): EV_GRID_ROW -- Row at index a_row. -- (from EV_GRID_I) require -- from EV_GRID_I a_row_positive: a_row > 0 a_row_not_greater_than_row_count: a_row <= row_count ensure -- from EV_GRID_I row_not_void: Result /= Void row_at_virtual_position (a_virtual_y: INTEGER_32; ignore_locked_rows: BOOLEAN): detachable EV_GRID_ROW -- Row at virtual y position a_virtual_y. -- (from EV_GRID_I) row_height: INTEGER_32 -- Height of all rows within Current. Only has an effect on Current -- while `is_row_height_fixed`, otherwise the individual height of each -- row is used directly. -- (from EV_GRID_I) Sb_both: INTEGER_32 = 3 -- Declared in Windows as SB_BOTH -- (from WEL_SB_CONSTANTS) Sb_bottom: INTEGER_32 = 7 -- Declared in Windows as SB_BOTTOM -- (from WEL_SB_CONSTANTS) Sb_ctl: INTEGER_32 = 2 -- Declared in Windows as SB_CTL -- (from WEL_SB_CONSTANTS) Sb_endscroll: INTEGER_32 = 8 -- Declared in Windows as SB_ENDSCROLL -- (from WEL_SB_CONSTANTS) Sb_horz: INTEGER_32 = 0 -- Declared in Windows as SB_HORZ -- (from WEL_SB_CONSTANTS) Sb_left: INTEGER_32 = 6 -- Declared in Windows as SB_LEFT -- (from WEL_SB_CONSTANTS) Sb_linedown: INTEGER_32 = 1 -- Declared in Windows as SB_LINEDOWN -- (from WEL_SB_CONSTANTS) Sb_lineleft: INTEGER_32 = 0 -- Declared in Windows as SB_LINELEFT -- (from WEL_SB_CONSTANTS) Sb_lineright: INTEGER_32 = 1 -- Declared in Windows as SB_LINERIGHT -- (from WEL_SB_CONSTANTS) Sb_lineup: INTEGER_32 = 0 -- Declared in Windows as SB_LINEUP -- (from WEL_SB_CONSTANTS) Sb_pagedown: INTEGER_32 = 3 -- Declared in Windows as SB_PAGEDOWN -- (from WEL_SB_CONSTANTS) Sb_pageleft: INTEGER_32 = 2 -- Declared in Windows as SB_PAGELEFT -- (from WEL_SB_CONSTANTS) Sb_pageright: INTEGER_32 = 3 -- Declared in Windows as SB_PAGERIGHT -- (from WEL_SB_CONSTANTS) Sb_pageup: INTEGER_32 = 2 -- Declared in Windows as SB_PAGEUP -- (from WEL_SB_CONSTANTS) Sb_right: INTEGER_32 = 7 -- Declared in Windows as SB_RIGHT -- (from WEL_SB_CONSTANTS) Sb_thumbposition: INTEGER_32 = 4 -- Declared in Windows as SB_THUMBPOSITION -- (from WEL_SB_CONSTANTS) Sb_thumbtrack: INTEGER_32 = 5 -- Declared in Windows as SB_THUMBTRACK -- (from WEL_SB_CONSTANTS) Sb_top: INTEGER_32 = 6 -- Declared in Windows as SB_TOP -- (from WEL_SB_CONSTANTS) Sb_vert: INTEGER_32 = 1 -- Declared in Windows as SB_VERT -- (from WEL_SB_CONSTANTS) screen_x: INTEGER_32 -- Horizontal offset of Current relative to screen -- (from EV_WIDGET_IMP) require -- from EV_POSITIONED_I True screen_y: INTEGER_32 -- Vertical offset of Current relative to screen. -- (from EV_WIDGET_IMP) require -- from EV_POSITIONED_I True scroller: detachable WEL_SCROLLER -- Scroller object for processing scroll messages. -- (from WEL_COMPOSITE_WINDOW) selected_columns: ARRAYED_LIST [EV_GRID_COLUMN] -- All columns selected in Current. -- (from EV_GRID_I) ensure -- from EV_GRID_I result_not_void: Result /= Void selected_items: ARRAYED_LIST [EV_GRID_ITEM] -- All items selected in Current. -- (from EV_GRID_I) ensure -- from EV_GRID_I result_not_void: Result /= Void selected_rows: ARRAYED_LIST [EV_GRID_ROW] -- All rows selected in Current. -- (from EV_GRID_I) ensure -- from EV_GRID_I result_not_void: Result /= Void set_default_key_processing_handler (a_handler: like default_key_processing_handler) -- Assign `default_key_processing_handler` to a_handler. -- (from EV_GRID_I) require -- from EV_WIDGET_I True Shared_environment: EV_ENVIRONMENT -- Shared EV_ENVIRONMENT object. -- (from EV_SHARED_APPLICATION) silly_window: WEL_SILLY_WINDOW -- Window that receives some private messages for WEL to work properly. -- (from WEL_RESIZING_SUPPORT) Sm_cmetrics: INTEGER_32 = 76 -- (from WEL_SM_CONSTANTS) Sm_cmonitors: INTEGER_32 = 80 -- (from WEL_SM_CONSTANTS) Sm_cxborder: INTEGER_32 = 5 -- (from WEL_SM_CONSTANTS) Sm_cxcursor: INTEGER_32 = 13 -- (from WEL_SM_CONSTANTS) Sm_cxdlgframe: INTEGER_32 = 7 -- (from WEL_SM_CONSTANTS) Sm_cxdoubleclk: INTEGER_32 = 36 -- (from WEL_SM_CONSTANTS) Sm_cxframe: INTEGER_32 = 32 -- (from WEL_SM_CONSTANTS) Sm_cxfullscreen: INTEGER_32 = 16 -- (from WEL_SM_CONSTANTS) Sm_cxhscroll: INTEGER_32 = 21 -- (from WEL_SM_CONSTANTS) Sm_cxhthumb: INTEGER_32 = 10 -- (from WEL_SM_CONSTANTS) Sm_cxicon: INTEGER_32 = 11 -- (from WEL_SM_CONSTANTS) Sm_cxiconspacing: INTEGER_32 = 38 -- (from WEL_SM_CONSTANTS) Sm_cxmaximized: INTEGER_32 = 61 -- (from WEL_SM_CONSTANTS) Sm_cxmenucheck: INTEGER_32 = 71 -- (from WEL_SM_CONSTANTS) Sm_cxmin: INTEGER_32 = 28 -- (from WEL_SM_CONSTANTS) Sm_cxmintrack: INTEGER_32 = 34 -- (from WEL_SM_CONSTANTS) Sm_cxscreen: INTEGER_32 = 0 -- (from WEL_SM_CONSTANTS) Sm_cxsize: INTEGER_32 = 30 -- (from WEL_SM_CONSTANTS) Sm_cxvirtualscreen: INTEGER_32 = 78 -- (from WEL_SM_CONSTANTS) Sm_cxvscroll: INTEGER_32 = 2 -- (from WEL_SM_CONSTANTS) Sm_cyborder: INTEGER_32 = 6 -- (from WEL_SM_CONSTANTS) Sm_cycaption: INTEGER_32 = 4 -- (from WEL_SM_CONSTANTS) Sm_cycursor: INTEGER_32 = 14 -- (from WEL_SM_CONSTANTS) Sm_cydlgframe: INTEGER_32 = 8 -- (from WEL_SM_CONSTANTS) Sm_cydoubleclk: INTEGER_32 = 37 -- (from WEL_SM_CONSTANTS) Sm_cyframe: INTEGER_32 = 33 -- (from WEL_SM_CONSTANTS) Sm_cyfullscreen: INTEGER_32 = 17 -- (from WEL_SM_CONSTANTS) Sm_cyhscroll: INTEGER_32 = 3 -- (from WEL_SM_CONSTANTS) Sm_cyicon: INTEGER_32 = 12 -- (from WEL_SM_CONSTANTS) Sm_cyiconspacing: INTEGER_32 = 39 -- (from WEL_SM_CONSTANTS) Sm_cykanjiwindow: INTEGER_32 = 18 -- (from WEL_SM_CONSTANTS) Sm_cymaximized: INTEGER_32 = 62 -- (from WEL_SM_CONSTANTS) Sm_cymenu: INTEGER_32 = 15 -- (from WEL_SM_CONSTANTS) Sm_cymenucheck: INTEGER_32 = 72 -- (from WEL_SM_CONSTANTS) Sm_cymin: INTEGER_32 = 29 -- (from WEL_SM_CONSTANTS) Sm_cymintrack: INTEGER_32 = 35 -- (from WEL_SM_CONSTANTS) Sm_cyscreen: INTEGER_32 = 1 -- (from WEL_SM_CONSTANTS) Sm_cysize: INTEGER_32 = 31 -- (from WEL_SM_CONSTANTS) Sm_cyvirtualscreen: INTEGER_32 = 79 -- (from WEL_SM_CONSTANTS) Sm_cyvscroll: INTEGER_32 = 20 -- (from WEL_SM_CONSTANTS) Sm_cyvthumb: INTEGER_32 = 9 -- (from WEL_SM_CONSTANTS) Sm_dbcsenabled: INTEGER_32 = 42 -- (from WEL_SM_CONSTANTS) Sm_debug: INTEGER_32 = 22 -- (from WEL_SM_CONSTANTS) Sm_immenabled: INTEGER_32 = 82 -- (from WEL_SM_CONSTANTS) Sm_menudropalignment: INTEGER_32 = 40 -- (from WEL_SM_CONSTANTS) Sm_mousepresent: INTEGER_32 = 19 -- (from WEL_SM_CONSTANTS) Sm_mousewheelpresent: INTEGER_32 = 75 -- (from WEL_SM_CONSTANTS) Sm_penwindows: INTEGER_32 = 41 -- (from WEL_SM_CONSTANTS) Sm_remotesession: INTEGER_32 = 4096 -- (from WEL_SM_CONSTANTS) Sm_reserved1: INTEGER_32 = 24 -- (from WEL_SM_CONSTANTS) Sm_reserved2: INTEGER_32 = 25 -- (from WEL_SM_CONSTANTS) Sm_reserved3: INTEGER_32 = 26 -- (from WEL_SM_CONSTANTS) Sm_reserved4: INTEGER_32 = 27 -- (from WEL_SM_CONSTANTS) Sm_swapbutton: INTEGER_32 = 23 -- (from WEL_SM_CONSTANTS) Sm_xvirtualscreen: INTEGER_32 = 76 -- (from WEL_SM_CONSTANTS) Sm_yvirtualscreen: INTEGER_32 = 77 -- (from WEL_SM_CONSTANTS) small_caption_font: WEL_FONT -- Small caption font -- (from WEL_SHARED_FONTS) ensure -- from WEL_SHARED_FONTS result_exists: Result /= Void and then Result.exists status_font: WEL_FONT -- Font used in status bars -- (from WEL_SHARED_FONTS) ensure -- from WEL_SHARED_FONTS result_exists: Result /= Void and then Result.exists string_size (s: READABLE_STRING_GENERAL; f: EV_FONT; tuple: TUPLE [width: INTEGER_32; height: INTEGER_32]) -- Result contains width and height required to -- fully display string s in font f. -- This should be used instead of `string_size` from EV_FONT -- as we can perform an optimized implementation which does -- not include the horizontal overhang or underhang. This can -- make quite a difference on certain platforms. require -- from EV_GRID_I s_not_void: s /= Void f_not_void: f /= Void subrow_indent: INTEGER_32 -- Number of pixels horizontally by which each subrow is indented -- from its parent_row. -- (from EV_GRID_I) Sw_hide: INTEGER_32 = 0 -- Declared in Windows as SW_HIDE -- (from WEL_SW_CONSTANTS) Sw_minimize: INTEGER_32 = 6 -- Declared in Windows as SW_MINIMIZE -- (from WEL_SW_CONSTANTS) Sw_otherunzoom: INTEGER_32 = 4 -- Declared in Windows as SW_OTHERUNZOOM -- (from WEL_SW_CONSTANTS) Sw_otherzoom: INTEGER_32 = 2 -- Declared in Windows as SW_OTHERZOOM -- (from WEL_SW_CONSTANTS) Sw_parentclosing: INTEGER_32 = 1 -- Declared in Windows as SW_PARENTCLOSING -- (from WEL_SW_CONSTANTS) Sw_parentopening: INTEGER_32 = 3 -- Declared in Windows as SW_PARENTOPENING -- (from WEL_SW_CONSTANTS) Sw_restore: INTEGER_32 = 9 -- Declared in Windows as SW_RESTORE -- (from WEL_SW_CONSTANTS) Sw_show: INTEGER_32 = 5 -- Declared in Windows as SW_SHOW -- (from WEL_SW_CONSTANTS) Sw_showmaximized: INTEGER_32 = 3 -- Declared in Windows as SW_SHOWMAXIMIZED -- (from WEL_SW_CONSTANTS) Sw_showminimized: INTEGER_32 = 2 -- Declared in Windows as SW_SHOWMINIMIZED -- (from WEL_SW_CONSTANTS) Sw_showminnoactive: INTEGER_32 = 7 -- Declared in Windows as SW_SHOWMINNOACTIVE -- (from WEL_SW_CONSTANTS) Sw_showna: INTEGER_32 = 8 -- Declared in Windows as SW_SHOWNA -- (from WEL_SW_CONSTANTS) Sw_shownoactivate: INTEGER_32 = 4 -- Declared in Windows as SW_SHOWNOACTIVATE -- (from WEL_SW_CONSTANTS) Sw_shownormal: INTEGER_32 = 1 -- Declared in Windows as SW_SHOWNORMAL -- (from WEL_SW_CONSTANTS) Swp_asyncwindowpos: INTEGER_32 = 16384 -- If the calling thread and the thread that owns the window are attached -- to different input queues, the system posts the request to the thread-- -- that owns the window. This prevents the calling thread from blocking -- its execution while other threads process the request. -- (from WEL_SWP_CONSTANTS) Swp_defererase: INTEGER_32 = 8192 -- Prevents generation of the WM_SYNCPAINT message. -- (from WEL_SWP_CONSTANTS) Swp_drawframe: INTEGER_32 = 32 -- Same as `swp_framechanged`. -- (from WEL_SWP_CONSTANTS) Swp_framechanged: INTEGER_32 = 32 -- Frame changed: send WM_NCCALCSIZE. -- (from WEL_SWP_CONSTANTS) Swp_hidewindow: INTEGER_32 = 128 -- (from WEL_SWP_CONSTANTS) Swp_noactivate: INTEGER_32 = 16 -- (from WEL_SWP_CONSTANTS) Swp_nocopybits: INTEGER_32 = 256 -- (from WEL_SWP_CONSTANTS) Swp_nomove: INTEGER_32 = 2 -- (from WEL_SWP_CONSTANTS) Swp_noownerzorder: INTEGER_32 = 512 -- (from WEL_SWP_CONSTANTS) Swp_noredraw: INTEGER_32 = 8 -- (from WEL_SWP_CONSTANTS) Swp_noreposition: INTEGER_32 = 512 -- Same as Swp_noownerzborder. -- (from WEL_SWP_CONSTANTS) Swp_nosendchanging: INTEGER_32 = 1024 -- Don't send WM_WINDOWPOSCHANGING. -- (from WEL_SWP_CONSTANTS) Swp_nosize: INTEGER_32 = 1 -- (from WEL_SWP_CONSTANTS) Swp_nozorder: INTEGER_32 = 4 -- (from WEL_SWP_CONSTANTS) Swp_showwindow: INTEGER_32 = 64 -- (from WEL_SWP_CONSTANTS) system_color_3dface: WEL_COLOR_REF -- Face color for three-dimensional display elements and -- for dialog box backgrounds. -- Was declared in {WEL_SYSTEM_COLORS} as synonym of `system_color_btnface`. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_3dhighlight: WEL_COLOR_REF -- Highlight color for three-dimensional display elements -- (for edges facing the light source.) -- Was declared in {WEL_SYSTEM_COLORS} as synonym of `system_color_btnhighlight`, `system_color_btnhilight` and `system_color_3dhilight`. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_3dhilight: WEL_COLOR_REF -- Highlight color for three-dimensional display elements -- (for edges facing the light source.) -- Was declared in {WEL_SYSTEM_COLORS} as synonym of `system_color_btnhighlight`, `system_color_btnhilight` and `system_color_3dhighlight`. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_3dshadow: WEL_COLOR_REF -- Shadow color for three-dimensional display elements -- (for edges facing away from the light source). -- Was declared in {WEL_SYSTEM_COLORS} as synonym of `system_color_btnshadow`. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_activeborder: WEL_COLOR_REF -- Color for active window border. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_activecaption: WEL_COLOR_REF -- Color for active window title bar. -- -- Windows 98, Windows 2000: Specifies the left side color in the -- color gradient of an active window's title bar if the gradient -- effect is enabled. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_appworkspace: WEL_COLOR_REF -- Background color of multiple document interface -- (MDI) applications. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_background: WEL_COLOR_REF -- Color of the desktop -- Was declared in {WEL_SYSTEM_COLORS} as synonym of `system_color_desktop`. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_btnface: WEL_COLOR_REF -- Face color for three-dimensional display elements and -- for dialog box backgrounds. -- Was declared in {WEL_SYSTEM_COLORS} as synonym of `system_color_3dface`. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_btnhighlight: WEL_COLOR_REF -- Highlight color for three-dimensional display elements -- (for edges facing the light source.) -- Was declared in {WEL_SYSTEM_COLORS} as synonym of `system_color_btnhilight`, `system_color_3dhighlight` and `system_color_3dhilight`. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_btnhilight: WEL_COLOR_REF -- Highlight color for three-dimensional display elements -- (for edges facing the light source.) -- Was declared in {WEL_SYSTEM_COLORS} as synonym of `system_color_btnhighlight`, `system_color_3dhighlight` and `system_color_3dhilight`. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_btnshadow: WEL_COLOR_REF -- Shadow color for three-dimensional display elements -- (for edges facing away from the light source). -- Was declared in {WEL_SYSTEM_COLORS} as synonym of `system_color_3dshadow`. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_btntext: WEL_COLOR_REF -- Color of text on push buttons. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_captiontext: WEL_COLOR_REF -- Color for text in caption, size box, and -- scroll bar arrow box. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_desktop: WEL_COLOR_REF -- Color of the desktop -- Was declared in {WEL_SYSTEM_COLORS} as synonym of `system_color_background`. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_gradientactivecaption: WEL_COLOR_REF -- Right side color in the color gradient of an active window's -- title bar. `system_color_activecaption` specifies the left side color. -- (from WEL_SYSTEM_COLORS) require -- from WEL_SYSTEM_COLORS windows_98_required: (create {WEL_WINDOWS_VERSION} end).is_windows_98_compatible ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_gradientinactivecaption: WEL_COLOR_REF -- Right side color in the color gradient of an inactive window's -- title bar. `system_color_inactivecaption` specifies the left side color. -- (from WEL_SYSTEM_COLORS) require -- from WEL_SYSTEM_COLORS windows_98_required: (create {WEL_WINDOWS_VERSION} end).is_windows_98_compatible ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_graytext: WEL_COLOR_REF -- Color for grayed (disabled) text. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_highlight: WEL_COLOR_REF -- Color for item(s) selected in a control. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_highlighttext: WEL_COLOR_REF -- Color for text of item(s) selected in a control. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_hotlight: WEL_COLOR_REF -- Color for a hot-tracked item. Single clicking a hot-tracked item executes the item. -- (Windows 98/Me, Windows 2000 or later) -- (from WEL_SYSTEM_COLORS) require -- from WEL_SYSTEM_COLORS windows_98_required: (create {WEL_WINDOWS_VERSION} end).is_windows_98_compatible ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_inactiveborder: WEL_COLOR_REF -- Color for inactive window border. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_inactivecaption: WEL_COLOR_REF -- Color for inactive window caption. -- -- Windows 98, Windows 2000: Specifies the left side color in the -- color gradient of an inactive window's title bar if the gradient -- effect is enabled. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_inactivecaptiontext: WEL_COLOR_REF -- Color of text in an inactive caption. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_info_text: WEL_COLOR_REF -- Background color for tooltip text -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_infobk: WEL_COLOR_REF -- Background color for tooltip -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_menu: WEL_COLOR_REF -- background color for menus. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_menubar: WEL_COLOR_REF -- The background color for the menu bar when menus appear as flat menus (see SystemParametersInfo). -- However, `system_color_menu` continues to specify the background color of the menu popup. -- (from WEL_SYSTEM_COLORS) require -- from WEL_SYSTEM_COLORS windows_xp_required: (create {WEL_WINDOWS_VERSION} end).is_windows_xp_compatible ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_menuhilight: WEL_COLOR_REF -- The color used to highlight menu items when the menu appears as a flat menu (see SystemParametersInfo). -- The highlighted menu item is outlined with `system_color_highlight`. -- (from WEL_SYSTEM_COLORS) require -- from WEL_SYSTEM_COLORS windows_xp_required: (create {WEL_WINDOWS_VERSION} end).is_windows_xp_compatible ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_menutext: WEL_COLOR_REF -- Color for text in menus. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_scrollbar: WEL_COLOR_REF -- Color for the scroll bar gray area. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_window: WEL_COLOR_REF -- background for windows. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_windowframe: WEL_COLOR_REF -- Color for window frame. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_color_windowtext: WEL_COLOR_REF -- Color for text in windows. -- (from WEL_SYSTEM_COLORS) ensure -- from WEL_SYSTEM_COLORS result_exists: Result /= Void system_font: WEL_FONT -- Default system font. -- (from WEL_SHARED_FONTS) ensure -- from WEL_SHARED_FONTS font_created: Result /= Void and then Result.exists system_menu: WEL_MENU -- Associated system menu -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists has_system_menu: has_system_menu ensure -- from WEL_COMPOSITE_WINDOW result_not_void: Result /= Void tooltip: STRING_32 -- Tooltip displayed on Current. -- (from EV_GRID_I) top_level_window: detachable EV_WINDOW -- Top level window that contains Current. -- (from EV_WIDGET_IMP) transport_executing: BOOLEAN -- Is a pick and drop or drag and drop currently -- being executed? -- (from EV_PICK_AND_DROPABLE_IMP) unlock_column (a_column: EV_GRID_COLUMN_I) -- Ensure column a_column is unlocked. -- (from EV_GRID_I) ensure -- from EV_GRID_I column_not_locked: not a_column.is_locked unlock_row (a_row: EV_GRID_ROW_I) -- Ensure row a_row is unlocked. -- (from EV_GRID_I) ensure -- from EV_GRID_I a_row_not_locked: not a_row.is_locked viewable_height: INTEGER_32 -- Height of Current available to view displayed items. Does -- not include width of any displayed scroll bars and/or header if shown. -- Is equivalent to viewport.height and by storing this, multiple queries are far quicker -- as the grid is only resized periodically and we no longer have to call EiffelVision for the value. -- (from EV_GRID_I) viewable_width: INTEGER_32 -- Width of Current available to view displayed items. Does -- not include width of any displayed scroll bars. Is equivalent to viewport.width and -- by storing this, multiple queries are far quicker as the grid is only resized periodically -- and we no longer have to call EiffelVision for the value. -- (from EV_GRID_I) viewable_x_offset: INTEGER_32 -- Horizontal distance in pixels from the left edge of Current to -- the left edge of the viewable area (defined by `viewable_width`, `viewable_height`) -- in which all content is displayed. -- (from EV_GRID_I) ensure -- from EV_GRID_I viewable_x_offset_valid: Result >= 0 and Result <= width viewable_y_offset: INTEGER_32 -- Vertical distance in pixels from the top edge of Current to -- the top edge of the viewable area (defined by `viewable_width`, `viewable_height`) -- in which all content is displayed. -- (from EV_GRID_I) ensure -- from EV_GRID_I viewable_y_offset_valid: Result >= 0 and Result <= height virtual_height: INTEGER_32 -- Height of virtual area in pixels. -- (from EV_GRID_I) ensure -- from EV_GRID_I result_non_negative: Result >= 0 virtual_width: INTEGER_32 -- Width of virtual area in pixels. -- (from EV_GRID_I) ensure -- from EV_GRID_I result_non_negative: Result >= 0 virtual_x_position: INTEGER_32 -- Horizontal offset of viewable area in relation to the left edge of -- the virtual area in pixels. -- (from EV_GRID_I) ensure -- from EV_GRID_I valid_result: Result >= 0 and Result <= maximum_virtual_x_position virtual_y_position: INTEGER_32 -- Vertical offset of viewable area in relation to the top edge of -- the virtual area in pixels. -- (from EV_GRID_I) ensure -- from EV_GRID_I valid_result: Result >= 0 and Result <= maximum_virtual_y_position Vk_0: INTEGER_32 = 48 -- (from WEL_VK_CONSTANTS) Vk_1: INTEGER_32 = 49 -- (from WEL_VK_CONSTANTS) Vk_2: INTEGER_32 = 50 -- (from WEL_VK_CONSTANTS) Vk_3: INTEGER_32 = 51 -- (from WEL_VK_CONSTANTS) Vk_4: INTEGER_32 = 52 -- (from WEL_VK_CONSTANTS) Vk_5: INTEGER_32 = 53 -- (from WEL_VK_CONSTANTS) Vk_6: INTEGER_32 = 54 -- (from WEL_VK_CONSTANTS) Vk_7: INTEGER_32 = 55 -- (from WEL_VK_CONSTANTS) Vk_8: INTEGER_32 = 56 -- (from WEL_VK_CONSTANTS) Vk_9: INTEGER_32 = 57 -- Vk_a thru Vk_z are the same as their ASCII equivalents: 'A' thru 'Z'. -- (from WEL_VK_CONSTANTS) Vk_a: INTEGER_32 = 65 -- (from WEL_VK_CONSTANTS) Vk_add: INTEGER_32 = 107 -- Declared in Windows as VK_ADD -- (from WEL_VK_CONSTANTS) Vk_alt: INTEGER_32 = 18 -- Declared in Windows as VK_MENU -- Was declared in {WEL_VK_CONSTANTS} as synonym of `vk_menu`. -- (from WEL_VK_CONSTANTS) Vk_apps: INTEGER_32 = 93 -- Declared in Windows as VK_APPS -- Vk_0 thru Vk_9 are the same as their ASCII equivalents: '0' thru '9'. -- (from WEL_VK_CONSTANTS) Vk_b: INTEGER_32 = 66 -- (from WEL_VK_CONSTANTS) Vk_back: INTEGER_32 = 8 -- Declared in Windows as VK_BACK -- (from WEL_VK_CONSTANTS) Vk_c: INTEGER_32 = 67 -- (from WEL_VK_CONSTANTS) Vk_cancel: INTEGER_32 = 3 -- Declared in Windows as VK_CANCEL -- (from WEL_VK_CONSTANTS) Vk_capital: INTEGER_32 = 20 -- Declared in Windows as VK_CAPITAL -- (from WEL_VK_CONSTANTS) Vk_clear: INTEGER_32 = 12 -- Declared in Windows as VK_CLEAR -- (from WEL_VK_CONSTANTS) Vk_control: INTEGER_32 = 17 -- Declared in Windows as VK_CONTROL -- (from WEL_VK_CONSTANTS) Vk_d: INTEGER_32 = 68 -- (from WEL_VK_CONSTANTS) Vk_decimal: INTEGER_32 = 110 -- Declared in Windows as VK_DECIMAL -- (from WEL_VK_CONSTANTS) Vk_delete: INTEGER_32 = 46 -- Declared in Windows as VK_DELETE -- (from WEL_VK_CONSTANTS) Vk_divide: INTEGER_32 = 111 -- Declared in Windows as VK_DIVIDE -- (from WEL_VK_CONSTANTS) Vk_down: INTEGER_32 = 40 -- Declared in Windows as VK_DOWN -- (from WEL_VK_CONSTANTS) Vk_e: INTEGER_32 = 69 -- (from WEL_VK_CONSTANTS) Vk_end: INTEGER_32 = 35 -- Declared in Windows as VK_END -- (from WEL_VK_CONSTANTS) Vk_escape: INTEGER_32 = 27 -- Declared in Windows as VK_ESCAPE -- (from WEL_VK_CONSTANTS) Vk_execute: INTEGER_32 = 43 -- Declared in Windows as VK_EXECUTE -- (from WEL_VK_CONSTANTS) Vk_f: INTEGER_32 = 70 -- (from WEL_VK_CONSTANTS) Vk_f1: INTEGER_32 = 112 -- Declared in Windows as VK_F1 -- (from WEL_VK_CONSTANTS) Vk_f10: INTEGER_32 = 121 -- Declared in Windows as VK_F10 -- (from WEL_VK_CONSTANTS) Vk_f11: INTEGER_32 = 122 -- Declared in Windows as VK_F11 -- (from WEL_VK_CONSTANTS) Vk_f12: INTEGER_32 = 123 -- Declared in Windows as VK_F12 -- (from WEL_VK_CONSTANTS) Vk_f13: INTEGER_32 = 124 -- Declared in Windows as VK_F13 -- (from WEL_VK_CONSTANTS) Vk_f14: INTEGER_32 = 125 -- Declared in Windows as VK_F14 -- (from WEL_VK_CONSTANTS) Vk_f15: INTEGER_32 = 126 -- Declared in Windows as VK_F15 -- (from WEL_VK_CONSTANTS) Vk_f16: INTEGER_32 = 127 -- Declared in Windows as VK_F16 -- (from WEL_VK_CONSTANTS) Vk_f17: INTEGER_32 = 128 -- Declared in Windows as VK_F17 -- (from WEL_VK_CONSTANTS) Vk_f18: INTEGER_32 = 129 -- Declared in Windows as VK_F18 -- (from WEL_VK_CONSTANTS) Vk_f19: INTEGER_32 = 130 -- Declared in Windows as VK_F19 -- (from WEL_VK_CONSTANTS) Vk_f2: INTEGER_32 = 113 -- Declared in Windows as VK_F2 -- (from WEL_VK_CONSTANTS) Vk_f20: INTEGER_32 = 131 -- Declared in Windows as VK_F20 -- (from WEL_VK_CONSTANTS) Vk_f21: INTEGER_32 = 132 -- Declared in Windows as VK_F21 -- (from WEL_VK_CONSTANTS) Vk_f22: INTEGER_32 = 133 -- Declared in Windows as VK_F22 -- (from WEL_VK_CONSTANTS) Vk_f23: INTEGER_32 = 134 -- Declared in Windows as VK_F23 -- (from WEL_VK_CONSTANTS) Vk_f24: INTEGER_32 = 135 -- Declared in Windows as VK_F24 -- (from WEL_VK_CONSTANTS) Vk_f3: INTEGER_32 = 114 -- Declared in Windows as VK_F3 -- (from WEL_VK_CONSTANTS) Vk_f4: INTEGER_32 = 115 -- Declared in Windows as VK_F4 -- (from WEL_VK_CONSTANTS) Vk_f5: INTEGER_32 = 116 -- Declared in Windows as VK_F5 -- (from WEL_VK_CONSTANTS) Vk_f6: INTEGER_32 = 117 -- Declared in Windows as VK_F6 -- (from WEL_VK_CONSTANTS) Vk_f7: INTEGER_32 = 118 -- Declared in Windows as VK_F7 -- (from WEL_VK_CONSTANTS) Vk_f8: INTEGER_32 = 119 -- Declared in Windows as VK_F8 -- (from WEL_VK_CONSTANTS) Vk_f9: INTEGER_32 = 120 -- Declared in Windows as VK_F9 -- (from WEL_VK_CONSTANTS) Vk_g: INTEGER_32 = 71 -- (from WEL_VK_CONSTANTS) Vk_h: INTEGER_32 = 72 -- (from WEL_VK_CONSTANTS) Vk_help: INTEGER_32 = 47 -- Declared in Windows as VK_HELP -- (from WEL_VK_CONSTANTS) Vk_home: INTEGER_32 = 36 -- Declared in Windows as VK_HOME -- (from WEL_VK_CONSTANTS) Vk_i: INTEGER_32 = 73 -- (from WEL_VK_CONSTANTS) Vk_insert: INTEGER_32 = 45 -- Declared in Windows as VK_INSERT -- (from WEL_VK_CONSTANTS) Vk_j: INTEGER_32 = 74 -- (from WEL_VK_CONSTANTS) Vk_k: INTEGER_32 = 75 -- (from WEL_VK_CONSTANTS) Vk_l: INTEGER_32 = 76 -- (from WEL_VK_CONSTANTS) Vk_lbutton: INTEGER_32 = 1 -- Declared in Windows as VK_LBUTTON -- (from WEL_VK_CONSTANTS) Vk_lcontrol: INTEGER_32 = 162 -- Declared in Windows as VK_LCONTROL -- (from WEL_VK_CONSTANTS) Vk_left: INTEGER_32 = 37 -- Declared in Windows as VK_LEFT -- (from WEL_VK_CONSTANTS) Vk_lmenu: INTEGER_32 = 164 -- Declared in Windows as VK_LMENU -- (from WEL_VK_CONSTANTS) Vk_lshift: INTEGER_32 = 160 -- Declared in Windows as VK_LSHIFT -- (from WEL_VK_CONSTANTS) Vk_m: INTEGER_32 = 77 -- (from WEL_VK_CONSTANTS) Vk_mbutton: INTEGER_32 = 4 -- Declared in Windows as VK_MBUTTON -- (from WEL_VK_CONSTANTS) Vk_menu: INTEGER_32 = 18 -- Declared in Windows as VK_MENU -- Was declared in {WEL_VK_CONSTANTS} as synonym of `vk_alt`. -- (from WEL_VK_CONSTANTS) Vk_multiply: INTEGER_32 = 106 -- Declared in Windows as VK_MULTIPLY -- (from WEL_VK_CONSTANTS) Vk_n: INTEGER_32 = 78 -- (from WEL_VK_CONSTANTS) Vk_next: INTEGER_32 = 34 -- Declared in Windows as VK_NEXT -- (from WEL_VK_CONSTANTS) Vk_numlock: INTEGER_32 = 144 -- Declared in Windows as VK_NUMLOCK -- (from WEL_VK_CONSTANTS) Vk_numpad0: INTEGER_32 = 96 -- Declared in Windows as VK_NUMPAD0 -- (from WEL_VK_CONSTANTS) Vk_numpad1: INTEGER_32 = 97 -- Declared in Windows as VK_NUMPAD1 -- (from WEL_VK_CONSTANTS) Vk_numpad2: INTEGER_32 = 98 -- Declared in Windows as VK_NUMPAD2 -- (from WEL_VK_CONSTANTS) Vk_numpad3: INTEGER_32 = 99 -- Declared in Windows as VK_NUMPAD3 -- (from WEL_VK_CONSTANTS) Vk_numpad4: INTEGER_32 = 100 -- Declared in Windows as VK_NUMPAD4 -- (from WEL_VK_CONSTANTS) Vk_numpad5: INTEGER_32 = 101 -- Declared in Windows as VK_NUMPAD5 -- (from WEL_VK_CONSTANTS) Vk_numpad6: INTEGER_32 = 102 -- Declared in Windows as VK_NUMPAD6 -- (from WEL_VK_CONSTANTS) Vk_numpad7: INTEGER_32 = 103 -- Declared in Windows as VK_NUMPAD7 -- (from WEL_VK_CONSTANTS) Vk_numpad8: INTEGER_32 = 104 -- Declared in Windows as VK_NUMPAD8 -- (from WEL_VK_CONSTANTS) Vk_numpad9: INTEGER_32 = 105 -- Declared in Windows as VK_NUMPAD9 -- (from WEL_VK_CONSTANTS) Vk_o: INTEGER_32 = 79 -- (from WEL_VK_CONSTANTS) Vk_p: INTEGER_32 = 80 -- (from WEL_VK_CONSTANTS) Vk_pause: INTEGER_32 = 19 -- Declared in Windows as VK_PAUSE -- (from WEL_VK_CONSTANTS) Vk_print: INTEGER_32 = 42 -- Declared in Windows as VK_PRINT -- (from WEL_VK_CONSTANTS) Vk_prior: INTEGER_32 = 33 -- Declared in Windows as VK_PRIOR -- (from WEL_VK_CONSTANTS) Vk_q: INTEGER_32 = 81 -- (from WEL_VK_CONSTANTS) Vk_r: INTEGER_32 = 82 -- (from WEL_VK_CONSTANTS) Vk_rbutton: INTEGER_32 = 2 -- Declared in Windows as VK_RBUTTON -- (from WEL_VK_CONSTANTS) Vk_rcontrol: INTEGER_32 = 163 -- Declared in Windows as VK_RCONTROL -- (from WEL_VK_CONSTANTS) Vk_return: INTEGER_32 = 13 -- Declared in Windows as VK_RETURN -- (from WEL_VK_CONSTANTS) Vk_right: INTEGER_32 = 39 -- Declared in Windows as VK_RIGHT -- (from WEL_VK_CONSTANTS) Vk_rmenu: INTEGER_32 = 165 -- Declared in Windows as VK_RMENU -- (from WEL_VK_CONSTANTS) Vk_rshift: INTEGER_32 = 161 -- Declared in Windows as VK_RSHIFT -- (from WEL_VK_CONSTANTS) Vk_s: INTEGER_32 = 83 -- (from WEL_VK_CONSTANTS) Vk_scroll: INTEGER_32 = 145 -- Declared in Windows as VK_SCROLL -- (from WEL_VK_CONSTANTS) Vk_select: INTEGER_32 = 41 -- Declared in Windows as VK_SELECT -- (from WEL_VK_CONSTANTS) Vk_separator: INTEGER_32 = 108 -- Declared in Windows as VK_SEPARATOR -- (from WEL_VK_CONSTANTS) Vk_shift: INTEGER_32 = 16 -- Declared in Windows as VK_SHIFT -- (from WEL_VK_CONSTANTS) Vk_snapshot: INTEGER_32 = 44 -- Declared in Windows as VK_SNAPSHOT -- (from WEL_VK_CONSTANTS) Vk_space: INTEGER_32 = 32 -- Declared in Windows as VK_SPACE -- (from WEL_VK_CONSTANTS) Vk_subtract: INTEGER_32 = 109 -- Declared in Windows as VK_SUBTRACT -- (from WEL_VK_CONSTANTS) Vk_t: INTEGER_32 = 84 -- (from WEL_VK_CONSTANTS) Vk_tab: INTEGER_32 = 9 -- Declared in Windows as VK_TAB -- (from WEL_VK_CONSTANTS) Vk_u: INTEGER_32 = 85 -- (from WEL_VK_CONSTANTS) Vk_up: INTEGER_32 = 38 -- Declared in Windows as VK_UP -- (from WEL_VK_CONSTANTS) Vk_v: INTEGER_32 = 86 -- (from WEL_VK_CONSTANTS) Vk_w: INTEGER_32 = 87 -- (from WEL_VK_CONSTANTS) Vk_x: INTEGER_32 = 88 -- (from WEL_VK_CONSTANTS) Vk_y: INTEGER_32 = 89 -- (from WEL_VK_CONSTANTS) Vk_z: INTEGER_32 = 90 -- (from WEL_VK_CONSTANTS) Wa_active: INTEGER_32 = 1 -- Window gains activation via alt-tab -- (from WEL_WA_CONSTANTS) Wa_clickactive: INTEGER_32 = 2 -- Window gains activation via mouse click -- (from WEL_WA_CONSTANTS) Wa_inactivate: INTEGER_32 = 0 -- Window loses activation -- (from WEL_WA_CONSTANTS) Wel_color_constants: WEL_COLOR_CONSTANTS -- Access to COLOR_xxx constants. -- (from WEL_CONSTANTS) Wel_drawing_constants: WEL_DRAWING_CONSTANTS -- Drawing Constants -- Include constants: -- DI_xxxx -- DT_xxxx -- ... -- (from WEL_CONSTANTS) Wel_ht_constants: WEL_HT_CONSTANTS -- Access to Ht_xxxconstnats -- (from WEL_CONSTANTS) Wel_input_constants: WEL_INPUT_CONSTANTS -- Mouse Constants -- Include constants: -- MA_xxxx -- ... -- (from WEL_CONSTANTS) Wel_list_view_constants: WEL_LIST_VIEW_CONSTANTS -- ListView Control Constants -- Include constants: -- LVM_xxxx -- LVS_xxxx -- LVN_xxxx -- ... -- (from WEL_CONSTANTS) Wel_ownerdraw_constants: WEL_ODS_CONSTANTS -- Owner Drawing Constants -- Include constants: -- ODS_xxxx -- ... -- (from WEL_CONSTANTS) Wel_rect: WEL_RECT -- Once access to an object of type WEL_RECT -- (from WEL_SHARED_TEMPORARY_OBJECTS) Wel_string: WEL_STRING -- Once access to an object of type WEL_STRING -- (from WEL_SHARED_TEMPORARY_OBJECTS) wel_string_from_string (s: READABLE_STRING_GENERAL): WEL_STRING -- Return a shared wel string set to s if -- s.count < `maximum_buffered_string_size`, otherwise -- return a new WEL_STRING object set to s. -- (from WEL_SHARED_TEMPORARY_OBJECTS) require -- from WEL_SHARED_TEMPORARY_OBJECTS s_not_void: s /= Void wel_string_from_string_with_newline_conversion (s: READABLE_STRING_GENERAL): WEL_STRING -- Return a shared wel string set to s if -- s.count < `maximum_buffered_string_size`, otherwise -- return a new WEL_STRING object set to s. -- Make sure all lone '%N' characters are prepended with a carriage return '%R'. -- (from WEL_SHARED_TEMPORARY_OBJECTS) require -- from WEL_SHARED_TEMPORARY_OBJECTS s_not_void: s /= Void wel_string_restricted (characters: INTEGER_32): WEL_STRING -- Return shared `wel_string` as Result if characters -- is less than `maximum_buffered_string_size`, otherwise return a -- new WEL_STRING object. This is used to prevent huge strings -- from being kept within a system. -- (from WEL_SHARED_TEMPORARY_OBJECTS) Wel_window_constants: WEL_WINDOW_CONSTANTS -- Window managment constants: -- Include constants: -- WM_xxxx -- ... -- (from WEL_CONSTANTS) widget_imp_at_pointer_position: detachable EV_WIDGET_IMP -- Result is implementation of widget at current -- pointer position or Void if none. -- (from EV_SHARED_TRANSPORT_IMP) require -- from EV_DOCKABLE_SOURCE_I True width: INTEGER_32 -- Width of Current. -- (from EV_WIDGET_IMP) require -- from EV_POSITIONED_I True require -- from EV_SIZEABLE_IMP not_is_destroyed: not is_destroyed Wm_activate: INTEGER_32 = 6 -- Declared in Windows as WM_ACTIVATE -- (from WEL_WM_CONSTANTS) Wm_activateapp: INTEGER_32 = 28 -- Declared in Windows as WM_ACTIVATEAPP -- (from WEL_WM_CONSTANTS) Wm_afxfirst: INTEGER_32 = 864 -- Declared in Windows as WM_AFXFIRST -- (from WEL_WM_CONSTANTS) Wm_afxlast: INTEGER_32 = 895 -- Declared in Windows as WM_AFXLAST -- (from WEL_WM_CONSTANTS) Wm_app: INTEGER_32 = 32768 -- Declared in Windows as WM_APP -- (from WEL_WM_CONSTANTS) Wm_appcommand: INTEGER_32 = 793 -- Declared in Windows as WM_APPCOMMAND -- (from WEL_WM_CONSTANTS) Wm_askcbformatname: INTEGER_32 = 780 -- Declared in Windows as WM_ASKCBFORMATNAME -- (from WEL_WM_CONSTANTS) Wm_canceljournal: INTEGER_32 = 75 -- Declared in Windows as WM_CANCELJOURNAL -- (from WEL_WM_CONSTANTS) Wm_cancelmode: INTEGER_32 = 31 -- Declared in Windows as WM_CANCELMODE -- (from WEL_WM_CONSTANTS) Wm_capturechanged: INTEGER_32 = 533 -- Declared in Windows as WM_CAPTURECHANGED -- (from WEL_WM_CONSTANTS) Wm_changecbchain: INTEGER_32 = 781 -- Declared in Windows as WM_CHANGECBCHAIN -- (from WEL_WM_CONSTANTS) Wm_changeuistate: INTEGER_32 = 295 -- Declared in Windows as WM_CHANGEUISTATE -- (from WEL_WM_CONSTANTS) Wm_char: INTEGER_32 = 258 -- Declared in Windows as WM_CHAR -- (from WEL_WM_CONSTANTS) Wm_chartoitem: INTEGER_32 = 47 -- Declared in Windows as WM_CHARTOITEM -- (from WEL_WM_CONSTANTS) Wm_childactivate: INTEGER_32 = 34 -- Declared in Windows as WM_CHILDACTIVATE -- (from WEL_WM_CONSTANTS) Wm_clear: INTEGER_32 = 771 -- Declared in Windows as WM_CLEAR -- (from WEL_WM_CONSTANTS) Wm_close: INTEGER_32 = 16 -- Declared in Windows as WM_CLOSE -- (from WEL_WM_CONSTANTS) Wm_command: INTEGER_32 = 273 -- Declared in Windows as WM_COMMAND -- (from WEL_WM_CONSTANTS) Wm_commnotify: INTEGER_32 = 68 -- Declared in Windows as WM_COMMNOTIFY -- (from WEL_WM_CONSTANTS) Wm_compacting: INTEGER_32 = 65 -- Declared in Windows as WM_COMPACTING -- (from WEL_WM_CONSTANTS) Wm_compareitem: INTEGER_32 = 57 -- Declared in Windows as WM_COMPAREITEM -- (from WEL_WM_CONSTANTS) Wm_contextmenu: INTEGER_32 = 123 -- Declared in Windows as WM_CONTEXTMENU -- (from WEL_WM_CONSTANTS) Wm_copy: INTEGER_32 = 769 -- Declared in Windows as WM_COPY -- (from WEL_WM_CONSTANTS) Wm_copydata: INTEGER_32 = 74 -- Declared in Windows as WM_COPYDATA -- (from WEL_WM_CONSTANTS) Wm_create: INTEGER_32 = 1 -- Declared in Windows as WM_CREATE -- (from WEL_WM_CONSTANTS) Wm_ctlcolor: INTEGER_32 = 25 -- Declared in Windows as WM_CTLCOLOR -- (from WEL_WM_CTLCOLOR_CONSTANTS) Wm_ctlcolorbtn: INTEGER_32 = 309 -- Declared in Windows as WM_CTLCOLORBTN -- (from WEL_WM_CTLCOLOR_CONSTANTS) Wm_ctlcolordialog: INTEGER_32 = 310 -- Declared in Windows as WM_CTLCOLORDIALOG -- (from WEL_WM_CONSTANTS) Wm_ctlcolordlg: INTEGER_32 = 310 -- Declared in Windows as WM_CTLCOLORDLG -- (from WEL_WM_CTLCOLOR_CONSTANTS) Wm_ctlcoloredit: INTEGER_32 = 307 -- Declared in Windows as WM_CTLCOLOREDIT -- (from WEL_WM_CTLCOLOR_CONSTANTS) Wm_ctlcolorlistbox: INTEGER_32 = 308 -- Declared in Windows as WM_CTLCOLORLISTBOX -- (from WEL_WM_CTLCOLOR_CONSTANTS) Wm_ctlcolormsgbox: INTEGER_32 = 306 -- Declared in Windows as WM_CTLCOLORMSGBOX -- (from WEL_WM_CTLCOLOR_CONSTANTS) Wm_ctlcolorscrollbar: INTEGER_32 = 311 -- Declared in Windows as WM_CTLCOLORSCROLLBAR -- (from WEL_WM_CTLCOLOR_CONSTANTS) Wm_ctlcolorstatic: INTEGER_32 = 312 -- Declared in Windows as WM_CTLCOLORSTATIC -- (from WEL_WM_CTLCOLOR_CONSTANTS) Wm_cut: INTEGER_32 = 768 -- Declared in Windows as WM_CUT -- (from WEL_WM_CONSTANTS) Wm_deadchar: INTEGER_32 = 259 -- Declared in Windows as WM_DEADCHAR -- (from WEL_WM_CONSTANTS) Wm_deleteitem: INTEGER_32 = 45 -- Declared in Windows as WM_DELETEITEM -- (from WEL_WM_CONSTANTS) Wm_destroy: INTEGER_32 = 2 -- Declared in Windows as WM_DESTROY -- (from WEL_WM_CONSTANTS) Wm_destroyclipboard: INTEGER_32 = 775 -- Declared in Windows as WM_DESTROYCLIPBOARD -- (from WEL_WM_CONSTANTS) Wm_devicechange: INTEGER_32 = 537 -- Declared in Windows as WM_DEVICECHANGE -- (from WEL_WM_CONSTANTS) Wm_devmodechange: INTEGER_32 = 27 -- Declared in Windows as WM_DEVMODECHANGE -- (from WEL_WM_CONSTANTS) Wm_displaychange: INTEGER_32 = 126 -- Declared in Windows as WM_DISPLAYCHANGE -- (from WEL_WM_CONSTANTS) Wm_dpichanged: INTEGER_32 = 736 -- Declared in Windows as WM_DPICHANGED -- (from WEL_WM_CONSTANTS) Wm_drawclipboard: INTEGER_32 = 776 -- Declared in Windows as WM_DRAWCLIPBOARD -- (from WEL_WM_CONSTANTS) Wm_drawitem: INTEGER_32 = 43 -- Declared in Windows as WM_DRAWITEM -- (from WEL_WM_CONSTANTS) Wm_dropfiles: INTEGER_32 = 563 -- Declared in Windows as WM_DROPFILES -- (from WEL_WM_CONSTANTS) Wm_enable: INTEGER_32 = 10 -- Declared in Windows as WM_ENABLE -- (from WEL_WM_CONSTANTS) Wm_endsession: INTEGER_32 = 22 -- Declared in Windows as WM_ENDSESSION -- (from WEL_WM_CONSTANTS) Wm_enteridle: INTEGER_32 = 289 -- Declared in Windows as WM_ENTERIDLE -- (from WEL_WM_CONSTANTS) Wm_entermenuloop: INTEGER_32 = 529 -- Declared in Windows as WM_ENTERMENULOOP -- (from WEL_WM_CONSTANTS) Wm_entersizemove: INTEGER_32 = 561 -- Declared in Windows as WM_ENTERSIZEMOVE -- (from WEL_WM_CONSTANTS) Wm_erasebkgnd: INTEGER_32 = 20 -- Declared in Windows as WM_ERASEBKGND -- (from WEL_WM_CONSTANTS) Wm_exitmenuloop: INTEGER_32 = 530 -- Declared in Windows as WM_EXITMENULOOP -- (from WEL_WM_CONSTANTS) Wm_exitsizemove: INTEGER_32 = 562 -- Declared in Windows as WM_EXITSIZEMOVE -- (from WEL_WM_CONSTANTS) Wm_fontchange: INTEGER_32 = 29 -- Declared in Windows as WM_FONTCHANGE -- (from WEL_WM_CONSTANTS) Wm_getdlgcode: INTEGER_32 = 135 -- Declared in Windows as WM_GETDLGCODE -- (from WEL_WM_CONSTANTS) Wm_getfont: INTEGER_32 = 49 -- Declared in Windows as WM_GETFONT -- (from WEL_WM_CONSTANTS) Wm_gethotkey: INTEGER_32 = 51 -- Declared in Windows as WM_GETHOTKEY -- (from WEL_WM_CONSTANTS) Wm_geticon: INTEGER_32 = 127 -- Declared in Windows as WM_GETICON -- (from WEL_WM_CONSTANTS) Wm_getminmaxinfo: INTEGER_32 = 36 -- Declared in Windows as WM_GETMINMAXINFO -- (from WEL_WM_CONSTANTS) Wm_getobject: INTEGER_32 = 61 -- Declared in Windows as WM_GETOBJECT -- (from WEL_WM_CONSTANTS) Wm_gettext: INTEGER_32 = 13 -- Declared in Windows as WM_GETTEXT -- (from WEL_WM_CONSTANTS) Wm_gettextlength: INTEGER_32 = 14 -- Declared in Windows as WM_GETTEXTLENGTH -- (from WEL_WM_CONSTANTS) Wm_handheldfirst: INTEGER_32 = 856 -- Declared in Windows as WM_HANDHELDFIRST -- (from WEL_WM_CONSTANTS) Wm_handheldlast: INTEGER_32 = 863 -- Declared in Windows as WM_HANDHELDLAST -- (from WEL_WM_CONSTANTS) Wm_help: INTEGER_32 = 83 -- Declared in Windows as WM_HELP -- (from WEL_WM_CONSTANTS) Wm_hotkey: INTEGER_32 = 786 -- Declared in Windows as WM_HOTKEY -- (from WEL_WM_CONSTANTS) Wm_hscroll: INTEGER_32 = 276 -- Declared in Windows as WM_HSCROLL -- (from WEL_WM_CONSTANTS) Wm_hscrollclipboard: INTEGER_32 = 782 -- Declared in Windows as WM_HSCROLLCLIPBOARD -- (from WEL_WM_CONSTANTS) Wm_iconerasebkgnd: INTEGER_32 = 39 -- Declared in Windows as WM_ICONERASEBKGND -- (from WEL_WM_CONSTANTS) Wm_ime_char: INTEGER_32 = 646 -- Declared in Windows as WM_IME_CHAR -- (from WEL_WM_CONSTANTS) Wm_ime_composition: INTEGER_32 = 271 -- Declared in Windows as WM_IME_COMPOSITION -- (from WEL_WM_CONSTANTS) Wm_ime_compositionfull: INTEGER_32 = 644 -- Declared in Windows as WM_IME_COMPOSITIONFULL -- (from WEL_WM_CONSTANTS) Wm_ime_control: INTEGER_32 = 643 -- Declared in Windows as WM_IME_CONTROL -- (from WEL_WM_CONSTANTS) Wm_ime_endcomposition: INTEGER_32 = 270 -- Declared in Windows as WM_IME_ENDCOMPOSITION -- (from WEL_WM_CONSTANTS) Wm_ime_keydown: INTEGER_32 = 656 -- Declared in Windows as WM_IME_KEYDOWN -- (from WEL_WM_CONSTANTS) wm_ime_keylast: INTEGER_32 -- Declared in Windows as WM_IME_KEYLAST -- (from WEL_WM_CONSTANTS) Wm_ime_keyup: INTEGER_32 = 657 -- Declared in Windows as WM_IME_KEYUP -- (from WEL_WM_CONSTANTS) Wm_ime_notify: INTEGER_32 = 642 -- Declared in Windows as WM_IME_NOTIFY -- (from WEL_WM_CONSTANTS) Wm_ime_request: INTEGER_32 = 648 -- Declared in Windows as WM_IME_REQUEST -- (from WEL_WM_CONSTANTS) Wm_ime_select: INTEGER_32 = 645 -- Declared in Windows as WM_IME_SELECT -- (from WEL_WM_CONSTANTS) Wm_ime_setcontext: INTEGER_32 = 641 -- Declared in Windows as WM_IME_SETCONTEXT -- (from WEL_WM_CONSTANTS) Wm_ime_startcomposition: INTEGER_32 = 269 -- Declared in Windows as WM_IME_STARTCOMPOSITION -- (from WEL_WM_CONSTANTS) Wm_initdialog: INTEGER_32 = 272 -- Declared in Windows as WM_INITDIALOG -- (from WEL_WM_CONSTANTS) Wm_initmenu: INTEGER_32 = 278 -- Declared in Windows as WM_INITMENU -- (from WEL_WM_CONSTANTS) Wm_initmenupopup: INTEGER_32 = 279 -- Declared in Windows as WM_INITMENUPOPUP -- (from WEL_WM_CONSTANTS) Wm_inputlangchange: INTEGER_32 = 81 -- Declared in Windows as WM_INPUTLANGCHANGE -- (from WEL_WM_CONSTANTS) Wm_inputlangchangerequest: INTEGER_32 = 80 -- Declared in Windows as WM_INPUTLANGCHANGEREQUEST -- (from WEL_WM_CONSTANTS) Wm_keydown: INTEGER_32 = 256 -- Declared in Windows as WM_KEYDOWN -- (from WEL_WM_CONSTANTS) Wm_keyfirst: INTEGER_32 = 256 -- Declared in Windows as WM_KEYFIRST -- (from WEL_WM_CONSTANTS) wm_keylast: INTEGER_32 -- Declared in Windows as WM_KEYLAST -- (from WEL_WM_CONSTANTS) Wm_keyup: INTEGER_32 = 257 -- Declared in Windows as WM_KEYUP -- (from WEL_WM_CONSTANTS) Wm_killfocus: INTEGER_32 = 8 -- Declared in Windows as WM_KILLFOCUS -- (from WEL_WM_CONSTANTS) Wm_lbuttondblclk: INTEGER_32 = 515 -- Declared in Windows as WM_LBUTTONDBLCLK -- (from WEL_WM_CONSTANTS) Wm_lbuttondown: INTEGER_32 = 513 -- Declared in Windows as WM_LBUTTONDOWN -- (from WEL_WM_CONSTANTS) Wm_lbuttonup: INTEGER_32 = 514 -- Declared in Windows as WM_LBUTTONUP -- (from WEL_WM_CONSTANTS) Wm_mbuttondblclk: INTEGER_32 = 521 -- Declared in Windows as WM_MBUTTONDBLCLK -- (from WEL_WM_CONSTANTS) Wm_mbuttondown: INTEGER_32 = 519 -- Declared in Windows as WM_MBUTTONDOWN -- (from WEL_WM_CONSTANTS) Wm_mbuttonup: INTEGER_32 = 520 -- Declared in Windows as WM_MBUTTONUP -- (from WEL_WM_CONSTANTS) Wm_mdiactivate: INTEGER_32 = 546 -- Declared in Windows as WM_MDIACTIVATE -- (from WEL_WM_CONSTANTS) Wm_mdicascade: INTEGER_32 = 551 -- Declared in Windows as WM_MDICASCADE -- (from WEL_WM_CONSTANTS) Wm_mdicreate: INTEGER_32 = 544 -- Declared in Windows as WM_MDICREATE -- (from WEL_WM_CONSTANTS) Wm_mdidestroy: INTEGER_32 = 545 -- Declared in Windows as WM_MDIDESTROY -- (from WEL_WM_CONSTANTS) Wm_mdigetactive: INTEGER_32 = 553 -- Declared in Windows as WM_MDIGETACTIVE -- (from WEL_WM_CONSTANTS) Wm_mdiiconarrange: INTEGER_32 = 552 -- Declared in Windows as WM_MDIICONARRANGE -- (from WEL_WM_CONSTANTS) Wm_mdimaximize: INTEGER_32 = 549 -- Declared in Windows as WM_MDIMAXIMIZE -- (from WEL_WM_CONSTANTS) Wm_mdinext: INTEGER_32 = 548 -- Declared in Windows as WM_MDINEXT -- (from WEL_WM_CONSTANTS) Wm_mdirefreshmenu: INTEGER_32 = 564 -- Declared in Windows as WM_MDIREFRESHMENU -- (from WEL_WM_CONSTANTS) Wm_mdirestore: INTEGER_32 = 547 -- Declared in Windows as WM_MDIRESTORE -- (from WEL_WM_CONSTANTS) Wm_mdisetmenu: INTEGER_32 = 560 -- Declared in Windows as WM_MDISETMENU -- (from WEL_WM_CONSTANTS) Wm_mditile: INTEGER_32 = 550 -- Declared in Windows as WM_MDITILE -- (from WEL_WM_CONSTANTS) Wm_measureitem: INTEGER_32 = 44 -- Declared in Windows as WM_MEASUREITEM -- (from WEL_WM_CONSTANTS) Wm_menuchar: INTEGER_32 = 288 -- Declared in Windows as WM_MENUCHAR -- (from WEL_WM_CONSTANTS) Wm_menucommand: INTEGER_32 = 294 -- Declared in Windows as WM_MENUCOMMAND -- (from WEL_WM_CONSTANTS) Wm_menudrag: INTEGER_32 = 291 -- Declared in Windows as WM_MENUDRAG -- (from WEL_WM_CONSTANTS) Wm_menugetobject: INTEGER_32 = 292 -- Declared in Windows as WM_MENUGETOBJECT -- (from WEL_WM_CONSTANTS) Wm_menurbuttonup: INTEGER_32 = 290 -- Declared in Windows as WM_MENURBUTTONUP -- (from WEL_WM_CONSTANTS) Wm_menuselect: INTEGER_32 = 287 -- Declared in Windows as WM_MENUSELECT -- (from WEL_WM_CONSTANTS) Wm_mouseactivate: INTEGER_32 = 33 -- Declared in Windows as WM_MOUSEACTIVATE -- (from WEL_WM_CONSTANTS) Wm_mousefirst: INTEGER_32 = 512 -- Declared in Windows as WM_MOUSEFIRST -- (from WEL_WM_CONSTANTS) Wm_mousehover: INTEGER_32 = 673 -- Require Windows98, Windows NT 4.0 or later -- Declared in Windows as WM_MOUSEHOVER -- (from WEL_WM_CONSTANTS) wm_mouselast: INTEGER_32 -- Declared in Windows as WM_MOUSELAST -- (from WEL_WM_CONSTANTS) Wm_mouseleave: INTEGER_32 = 675 -- Require Windows98, Windows NT 4.0 or later -- Declared in Windows as WM_MOUSELEAVE -- (from WEL_WM_CONSTANTS) Wm_mousemove: INTEGER_32 = 512 -- Declared in Windows as WM_MOUSEMOVE -- (from WEL_WM_CONSTANTS) Wm_mousewheel: INTEGER_32 = 522 -- Declared in Windows as WM_MOUSEWHEEL -- (from WEL_WM_CONSTANTS) Wm_move: INTEGER_32 = 3 -- Declared in Windows as WM_MOVE -- (from WEL_WM_CONSTANTS) Wm_moving: INTEGER_32 = 534 -- Declared in Windows as WM_MOVING -- (from WEL_WM_CONSTANTS) Wm_ncactivate: INTEGER_32 = 134 -- Declared in Windows as WM_NCACTIVATE -- (from WEL_WM_CONSTANTS) Wm_nccalcsize: INTEGER_32 = 131 -- Declared in Windows as WM_NCCALCSIZE -- (from WEL_WM_CONSTANTS) Wm_nccreate: INTEGER_32 = 129 -- Declared in Windows as WM_NCCREATE -- (from WEL_WM_CONSTANTS) Wm_ncdestroy: INTEGER_32 = 130 -- Declared in Windows as WM_NCDESTROY -- (from WEL_WM_CONSTANTS) Wm_nchittest: INTEGER_32 = 132 -- Declared in Windows as WM_NCHITTEST -- (from WEL_WM_CONSTANTS) Wm_nclbuttondblclk: INTEGER_32 = 163 -- Declared in Windows as WM_NCLBUTTONDBLCLK -- (from WEL_WM_CONSTANTS) Wm_nclbuttondown: INTEGER_32 = 161 -- Declared in Windows as WM_NCLBUTTONDOWN -- (from WEL_WM_CONSTANTS) Wm_nclbuttonup: INTEGER_32 = 162 -- Declared in Windows as WM_NCLBUTTONUP -- (from WEL_WM_CONSTANTS) Wm_ncmbuttondblclk: INTEGER_32 = 169 -- Declared in Windows as WM_NCMBUTTONDBLCLK -- (from WEL_WM_CONSTANTS) Wm_ncmbuttondown: INTEGER_32 = 167 -- Declared in Windows as WM_NCMBUTTONDOWN -- (from WEL_WM_CONSTANTS) Wm_ncmbuttonup: INTEGER_32 = 168 -- Declared in Windows as WM_NCMBUTTONUP -- (from WEL_WM_CONSTANTS) Wm_ncmousehover: INTEGER_32 = 672 -- Require Windows98, Windows NT 5.0 or later -- Declared in Windows as WM_NCMOUSEHOVER -- (from WEL_WM_CONSTANTS) Wm_ncmouseleave: INTEGER_32 = 674 -- Require Windows98, Windows NT 5.0 or later -- Declared in Windows as WM_NCMOUSELEAVE -- (from WEL_WM_CONSTANTS) Wm_ncmousemove: INTEGER_32 = 160 -- Declared in Windows as WM_NCMOUSEMOVE -- (from WEL_WM_CONSTANTS) Wm_ncpaint: INTEGER_32 = 133 -- Declared in Windows as WM_NCPAINT -- (from WEL_WM_CONSTANTS) Wm_ncrbuttondblclk: INTEGER_32 = 166 -- Declared in Windows as WM_NCRBUTTONDBLCLK -- (from WEL_WM_CONSTANTS) Wm_ncrbuttondown: INTEGER_32 = 164 -- Declared in Windows as WM_NCRBUTTONDOWN -- (from WEL_WM_CONSTANTS) Wm_ncrbuttonup: INTEGER_32 = 165 -- Declared in Windows as WM_NCRBUTTONUP -- (from WEL_WM_CONSTANTS) Wm_ncxbuttondblclk: INTEGER_32 = 173 -- Declared in Windows as WM_NCXBUTTONDBLCLK -- (from WEL_WM_CONSTANTS) Wm_ncxbuttondown: INTEGER_32 = 171 -- Declared in Windows as WM_NCXBUTTONDOWN -- (from WEL_WM_CONSTANTS) Wm_ncxbuttonup: INTEGER_32 = 172 -- Declared in Windows as WM_NCXBUTTONUP -- (from WEL_WM_CONSTANTS) Wm_nextdlgctl: INTEGER_32 = 40 -- Declared in Windows as WM_NEXTDLGCTL -- (from WEL_WM_CONSTANTS) Wm_nextmenu: INTEGER_32 = 531 -- Declared in Windows as WM_NEXTMENU -- (from WEL_WM_CONSTANTS) Wm_notify: INTEGER_32 = 78 -- Declared in Windows as WM_NOTIFY -- (from WEL_WM_CONSTANTS) Wm_notifyformat: INTEGER_32 = 85 -- Declared in Windows as WM_NOTIFYFORMAT -- (from WEL_WM_CONSTANTS) Wm_null: INTEGER_32 = 0 -- Declared in Windows as WM_NULL -- (from WEL_WM_CONSTANTS) Wm_paint: INTEGER_32 = 15 -- Declared in Windows as WM_PAINT -- (from WEL_WM_CONSTANTS) Wm_paintclipboard: INTEGER_32 = 777 -- Declared in Windows as WM_PAINTCLIPBOARD -- (from WEL_WM_CONSTANTS) Wm_painticon: INTEGER_32 = 38 -- Declared in Windows as WM_PAINTICON -- (from WEL_WM_CONSTANTS) Wm_palettechanged: INTEGER_32 = 785 -- Declared in Windows as WM_PALETTECHANGED -- (from WEL_WM_CONSTANTS) Wm_paletteischanging: INTEGER_32 = 784 -- Declared in Windows as WM_PALETTEISCHANGING -- (from WEL_WM_CONSTANTS) Wm_parentnotify: INTEGER_32 = 528 -- Declared in Windows as WM_PARENTNOTIFY -- (from WEL_WM_CONSTANTS) Wm_paste: INTEGER_32 = 770 -- Declared in Windows as WM_PASTE -- (from WEL_WM_CONSTANTS) Wm_penwinfirst: INTEGER_32 = 896 -- Declared in Windows as WM_PENWINFIRST -- (from WEL_WM_CONSTANTS) Wm_penwinlast: INTEGER_32 = 911 -- Declared in Windows as WM_PENWINLAST -- (from WEL_WM_CONSTANTS) Wm_power: INTEGER_32 = 72 -- Declared in Windows as WM_POWER -- (from WEL_WM_CONSTANTS) Wm_powerbroadcast: INTEGER_32 = 536 -- Declared in Windows as WM_POWERBROADCAST -- (from WEL_WM_CONSTANTS) Wm_print: INTEGER_32 = 791 -- Declared in Windows as WM_PRINT -- (from WEL_WM_CONSTANTS) Wm_printclient: INTEGER_32 = 792 -- Declared in Windows as WM_PRINTCLIENT -- (from WEL_WM_CONSTANTS) Wm_querydragicon: INTEGER_32 = 55 -- Declared in Windows as WM_QUERYDRAGICON -- (from WEL_WM_CONSTANTS) Wm_queryendsession: INTEGER_32 = 17 -- Declared in Windows as WM_QUERYENDSESSION -- (from WEL_WM_CONSTANTS) Wm_querynewpalette: INTEGER_32 = 783 -- Declared in Windows as WM_QUERYNEWPALETTE -- (from WEL_WM_CONSTANTS) Wm_queryopen: INTEGER_32 = 19 -- Declared in Windows as WM_QUERYOPEN -- (from WEL_WM_CONSTANTS) Wm_queryuistate: INTEGER_32 = 297 -- Declared in Windows as WM_QUERYUISTATE -- (from WEL_WM_CONSTANTS) Wm_queuesync: INTEGER_32 = 35 -- Declared in Windows as WM_QUEUESYNC -- (from WEL_WM_CONSTANTS) Wm_quit: INTEGER_32 = 18 -- Declared in Windows as WM_QUIT -- (from WEL_WM_CONSTANTS) Wm_rbuttondblclk: INTEGER_32 = 518 -- Declared in Windows as WM_RBUTTONDBLCLK -- (from WEL_WM_CONSTANTS) Wm_rbuttondown: INTEGER_32 = 516 -- Declared in Windows as WM_RBUTTONDOWN -- (from WEL_WM_CONSTANTS) Wm_rbuttonup: INTEGER_32 = 517 -- Declared in Windows as WM_RBUTTONUP -- (from WEL_WM_CONSTANTS) Wm_renderallformats: INTEGER_32 = 774 -- Declared in Windows as WM_RENDERALLFORMATS -- (from WEL_WM_CONSTANTS) Wm_renderformat: INTEGER_32 = 773 -- Declared in Windows as WM_RENDERFORMAT -- (from WEL_WM_CONSTANTS) Wm_set_window_pos_msg: INTEGER_32 = 1025 -- Our own messaging -- (from WEL_RESIZING_SUPPORT) Wm_setcursor: INTEGER_32 = 32 -- Declared in Windows as WM_SETCURSOR -- (from WEL_WM_CONSTANTS) Wm_setfocus: INTEGER_32 = 7 -- Declared in Windows as WM_SETFOCUS -- (from WEL_WM_CONSTANTS) Wm_setfont: INTEGER_32 = 48 -- Declared in Windows as WM_SETFONT -- (from WEL_WM_CONSTANTS) Wm_sethotkey: INTEGER_32 = 50 -- Declared in Windows as WM_SETHOTKEY -- (from WEL_WM_CONSTANTS) Wm_seticon: INTEGER_32 = 128 -- Declared in Windows as WM_SETICON -- (from WEL_WM_CONSTANTS) Wm_setredraw: INTEGER_32 = 11 -- Declared in Windows as WM_SETREDRAW -- (from WEL_WM_CONSTANTS) Wm_settext: INTEGER_32 = 12 -- Declared in Windows as WM_SETTEXT -- (from WEL_WM_CONSTANTS) Wm_settingchange: INTEGER_32 = 26 -- Declared in Windows as WM_WININICHANGE -- Was declared in {WEL_WM_CONSTANTS} as synonym of `wm_wininichange`. -- (from WEL_WM_CONSTANTS) Wm_showwindow: INTEGER_32 = 24 -- Declared in Windows as WM_SHOWWINDOW -- (from WEL_WM_CONSTANTS) Wm_size: INTEGER_32 = 5 -- Declared in Windows as WM_SIZE -- (from WEL_WM_CONSTANTS) Wm_sizeclipboard: INTEGER_32 = 779 -- Declared in Windows as WM_SIZECLIPBOARD -- (from WEL_WM_CONSTANTS) Wm_sizing: INTEGER_32 = 532 -- Declared in Windows as WM_SIZING -- (from WEL_WM_CONSTANTS) Wm_spoolerstatus: INTEGER_32 = 42 -- Declared in Windows as WM_SPOOLERSTATUS -- (from WEL_WM_CONSTANTS) Wm_stylechanged: INTEGER_32 = 125 -- Declared in Windows as WM_STYLECHANGED -- (from WEL_WM_CONSTANTS) Wm_stylechanging: INTEGER_32 = 124 -- Declared in Windows as WM_STYLECHANGING -- (from WEL_WM_CONSTANTS) Wm_syncpaint: INTEGER_32 = 136 -- Declared in Windows as WM_SYNCPAINT -- (from WEL_WM_CONSTANTS) Wm_syschar: INTEGER_32 = 262 -- Declared in Windows as WM_SYSCHAR -- (from WEL_WM_CONSTANTS) Wm_syscolorchange: INTEGER_32 = 21 -- Declared in Windows as WM_SYSCOLORCHANGE -- (from WEL_WM_CONSTANTS) Wm_syscommand: INTEGER_32 = 274 -- Declared in Windows as WM_SYSCOMMAND -- (from WEL_WM_CONSTANTS) Wm_sysdeadchar: INTEGER_32 = 263 -- Declared in Windows as WM_SYSDEADCHAR -- (from WEL_WM_CONSTANTS) Wm_syskeydown: INTEGER_32 = 260 -- Declared in Windows as WM_SYSKEYDOWN -- (from WEL_WM_CONSTANTS) Wm_syskeyup: INTEGER_32 = 261 -- Declared in Windows as WM_SYSKEYUP -- (from WEL_WM_CONSTANTS) Wm_tcard: INTEGER_32 = 82 -- Declared in Windows as WM_TCARD -- (from WEL_WM_CONSTANTS) Wm_themechanged: INTEGER_32 = 794 -- Declared in Windows as WM_THEMECHANGED -- (from WEL_WM_CONSTANTS) Wm_timechange: INTEGER_32 = 30 -- Declared in Windows as WM_TIMECHANGE -- (from WEL_WM_CONSTANTS) Wm_timer: INTEGER_32 = 275 -- Declared in Windows as WM_TIMER -- (from WEL_WM_CONSTANTS) Wm_undo: INTEGER_32 = 772 -- Declared in Windows as WM_UNDO -- (from WEL_WM_CONSTANTS) Wm_uninitmenupopup: INTEGER_32 = 293 -- Declared in Windows as WM_UNINITMENUPOPUP -- (from WEL_WM_CONSTANTS) Wm_updateuistate: INTEGER_32 = 296 -- Declared in Windows as WM_UPDATEUISTATE -- (from WEL_WM_CONSTANTS) Wm_user: INTEGER_32 = 1024 -- Declared in Windows as WM_USER -- (from WEL_WM_CONSTANTS) Wm_userchanged: INTEGER_32 = 84 -- Declared in Windows as WM_USERCHANGED -- (from WEL_WM_CONSTANTS) Wm_vkeytoitem: INTEGER_32 = 46 -- Declared in Windows as WM_VKEYTOITEM -- (from WEL_WM_CONSTANTS) Wm_vscroll: INTEGER_32 = 277 -- Declared in Windows as WM_VSCROLL -- (from WEL_WM_CONSTANTS) Wm_vscrollclipboard: INTEGER_32 = 778 -- Declared in Windows as WM_VSCROLLCLIPBOARD -- (from WEL_WM_CONSTANTS) Wm_windowposchanged: INTEGER_32 = 71 -- Declared in Windows as WM_WINDOWPOSCHANGED -- (from WEL_WM_CONSTANTS) Wm_windowposchanging: INTEGER_32 = 70 -- Declared in Windows as WM_WINDOWPOSCHANGING -- (from WEL_WM_CONSTANTS) Wm_wininichange: INTEGER_32 = 26 -- Declared in Windows as WM_WININICHANGE -- Was declared in {WEL_WM_CONSTANTS} as synonym of `wm_settingchange`. -- (from WEL_WM_CONSTANTS) Wm_xbuttondblclk: INTEGER_32 = 525 -- Declared in Windows as WM_XBUTTONDBLCLK -- (from WEL_WM_CONSTANTS) Wm_xbuttondown: INTEGER_32 = 523 -- Declared in Windows as WM_XBUTTONDOWN -- (from WEL_WM_CONSTANTS) Wm_xbuttonup: INTEGER_32 = 524 -- Declared in Windows as WM_XBUTTONUP -- (from WEL_WM_CONSTANTS) x_position: INTEGER_32 -- Result is x_position of Current in pixels. -- If `wel_parent` not Void then Result is relative to `wel_parent` else -- Result is relative to screen. -- (from EV_WIDGET_IMP) require -- from EV_POSITIONED_I True require -- from EV_SIZEABLE_IMP not_is_destroyed: not is_destroyed require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW wel_parent = Void implies Result = absolute_x y_position: INTEGER_32 -- Result is x_position of Current in pixels. -- If `wel_parent` not Void then Result is relative to `wel_parent` else -- Result is relative to screen. -- (from EV_WIDGET_IMP) require -- from EV_POSITIONED_I True require -- from EV_SIZEABLE_IMP not_is_destroyed: not is_destroyed require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW wel_parent = Void implies Result = absolute_y feature -- Measurement dpi: NATURAL_32 -- Window dpi. -- (from EV_POSITIONED_I) feature -- Comparison frozen deep_equal (a: detachable ANY; b: like arg #1): BOOLEAN -- Are a and b either both void -- or attached to isomorphic object structures? -- (from ANY) ensure -- from ANY instance_free: class shallow_implies_deep: standard_equal (a, b) implies Result both_or_none_void: (a = Void) implies (Result = (b = Void)) same_type: (Result and (a /= Void)) implies (b /= Void and then a.same_type (b)) symmetric: Result implies deep_equal (b, a) frozen equal (a: detachable ANY; b: like arg #1): BOOLEAN -- Are a and b either both void or attached -- to objects considered equal? -- (from ANY) ensure -- from ANY instance_free: class definition: Result = (a = Void and b = Void) or else ((a /= Void and b /= Void) and then a.is_equal (b)) frozen is_deep_equal alias "≡≡≡" (other: EV_GRID_IMP): BOOLEAN -- Are Current and other attached to isomorphic object structures? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from 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: EV_GRID_IMP): BOOLEAN -- Is other attached to an object considered -- equal to current object? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY symmetric: Result implies other ~ Current consistent: standard_is_equal (other) implies Result frozen standard_equal (a: detachable ANY; b: like arg #1): BOOLEAN -- Are a and b either both void or attached to -- field-by-field identical objects of the same type? -- Always uses default object comparison criterion. -- (from ANY) ensure -- from ANY instance_free: class definition: Result = (a = Void and b = Void) or else ((a /= Void and b /= Void) and then a.standard_is_equal (b)) frozen standard_is_equal alias "≜" (other: EV_GRID_IMP): BOOLEAN -- Is other attached to an object of the same type -- as current object, and field-by-field identical to it? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY same_type: Result implies same_type (other) symmetric: Result implies other.standard_is_equal (Current) feature -- Status report absolute_x: INTEGER_32 -- Absolute x position -- (from WEL_WINDOW) require -- from EV_WIDGET_IMP True require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW Result = window_rect.x absolute_y: INTEGER_32 -- Absolute y position -- (from WEL_WINDOW) require -- from EV_WIDGET_IMP True require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW Result = window_rect.y are_columns_drawn_above_rows: BOOLEAN -- For drawing purposes, are columns drawn above rows? -- If True, for all cells within Current whose `column` and `row` have non-Void -- foreground or background colors, the column colors are given priority. -- If False, the colors of the row are given priority. -- (from EV_GRID_I) caption_height: INTEGER_32 -- Height of normal caption area -- (from WEL_SYSTEM_METRICS) captured_window: detachable WEL_WINDOW -- Current window which has been captured. -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists window_captured: window_captured child_window_from_point (point: WEL_POINT): POINTER -- Result is pointer to child window as position point. -- Only checks children and their children and returns a child even -- if over a HTTRANSPARENT area of the child. Corresponds to -- the ChildWindowFromPoint Windows API call. -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW point_not_void: point /= Void point_exists: point.exists client_rect: WEL_RECT -- Client rectangle -- (from WEL_WINDOW) require -- from EV_WIDGET_IMP True require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW result_not_void: Result /= Void closeable: BOOLEAN -- Can the user close the window? -- Yes by default. -- (from WEL_COMPOSITE_WINDOW) closest_dockable_target: detachable EV_DOCKABLE_TARGET -- Result is first dockable target that `is_dockable` found by recursively -- searching up through the parenting structure from the widget -- currently underneath the pointer position. -- Result will be Void if a dockable target is not found. -- (from EV_DOCKABLE_SOURCE_I) ensure -- from EV_DOCKABLE_SOURCE_I result_is_dockable: Result /= Void implies Result.is_docking_enabled column_displayed (a_column: INTEGER_32): BOOLEAN -- May column a_column be displayed when Current is? -- Will return False if `hide` has been called on column a_column. -- A value of True does not signify that column a_column is visible on screen at that particular time. -- (from EV_GRID_I) require -- from EV_GRID_I a_column_within_bounds: a_column > 0 and a_column <= column_count command (message: INTEGER_32): WEL_COMMAND -- Command associated to message -- (from WEL_WINDOW) require -- from WEL_WINDOW positive_message: message >= 0 command_exists: command_exists (message) ensure -- from WEL_WINDOW result_not_void: Result /= Void command_argument (message: INTEGER_32): detachable ANY -- Command argument associated to message -- (from WEL_WINDOW) require -- from WEL_WINDOW positive_message: message >= 0 command_exists: command_exists (message) command_exists (message: INTEGER_32): BOOLEAN -- Does a command associated to message exist? -- (from WEL_WINDOW) require -- from WEL_WINDOW positive_message: message >= 0 ensure -- from WEL_WINDOW definition: Result implies attached commands as l_commands_var and then l_commands_var.item (message) /= Void commands_enabled: BOOLEAN -- Is the commands execution enabled? -- (from WEL_WINDOW) conforms_to (other: ANY): BOOLEAN -- Does type of current object conform to type -- of other (as per Eiffel: The Language, chapter 13)? -- (from ANY) require -- from ANY other_not_void: other /= Void cursor_height: INTEGER_32 -- Height of the cursor -- (from WEL_SYSTEM_METRICS) cursor_width: INTEGER_32 -- Width of the cursor -- (from WEL_SYSTEM_METRICS) dbcs_installed: BOOLEAN -- Is the double-byte character set (DBCS) version -- of USER.EXE installed? -- (from WEL_SYSTEM_METRICS) debug_installed: BOOLEAN -- Is the debugging version of USER.EXE installed? -- (from WEL_SYSTEM_METRICS) depth_in_tree (a_row_index: INTEGER_32): INTEGER_32 -- Depth in tree for a_row_index -- (from EV_GRID_I) require -- from EV_GRID_I valid_index: 0 < a_row_index and a_row_index <= row_count destroyed: BOOLEAN -- Is Current destroyed ? -- (from EV_WIDGET_IMP) dialog_window_frame_height: INTEGER_32 -- Height of window frame for window that -- has the `ws_dlgframe` style -- (from WEL_SYSTEM_METRICS) dialog_window_frame_width: INTEGER_32 -- Width of window frame for window that -- has the `ws_dlgframe` style -- (from WEL_SYSTEM_METRICS) disable_capture -- Release the user input. -- (from EV_GRID_I) require -- from EV_PICK_AND_DROPABLE_I True require -- from EV_DOCKABLE_SOURCE_IMP True displayed_background_color (a_column, a_row: INTEGER_32): EV_COLOR -- Result is background color to be displayed for item at position a_column, a_row -- on parts of the cell space in which the item is not displayed. i.e. for the background -- area of a tree structure. -- (from EV_GRID_I) require -- from EV_GRID_I valid_column: a_column >= 1 and a_column <= column_count valid_row: a_row >= 1 and a_row <= row_count ensure -- from EV_GRID_I result_not_void: Result /= Void double_click_height: INTEGER_32 -- Height of a rectangle around the location of a -- first click in a double-click sequence. The second -- click must occur within this rectangle for the -- system to consider the two clicks a double-click. -- (from WEL_SYSTEM_METRICS) double_click_width: INTEGER_32 -- Width of a rectangle around the location of a -- first click in a double-click sequence. The second -- click must occur within this rectangle for the -- system to consider the two clicks a double-click. -- (from WEL_SYSTEM_METRICS) drawables_have_focus: BOOLEAN -- Does `drawable` or any of the drawables representing locked rows currently -- have the focus? If False then selection should be grayed. -- (from EV_GRID_I) enable_capture -- Grab the user input. -- (from EV_GRID_I) require -- from EV_PICK_AND_DROPABLE_I True is_sensitive: BOOLEAN -- Is the window enabled for mouse and keyboard input? -- (from WEL_WINDOW) require -- from EV_SENSITIVE_I True require -- from WEL_WINDOW exists: exists ex_style: INTEGER_32 -- Window ex_style -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists exists: BOOLEAN -- Does the `item` exist? -- (from WEL_ANY) require -- from EV_WIDGET_IMP True ensure -- from WEL_ANY Result = (wel_item /= default_pointer) find_next_item (a_row_index, a_column_index: INTEGER_32; look_left, a_is_tab_navigatable: BOOLEAN): detachable EV_GRID_ITEM -- Find the next item horizontally in grid_row starting at index starting_index, -- if look_left then the the item to the left/up is found, else it looks right/down. -- If a_is_tab_navigatable then Result must have 'is_tab_navigatable' set. -- Result is Void if no item is found. -- (from EV_GRID_I) require -- from EV_GRID_I a_row_index_valid: a_row_index > 0 and then a_row_index <= row_count a_column_index_valid: a_column_index > 0 and then a_column_index <= column_count first_visible_column: detachable EV_GRID_COLUMN -- First column visible in Current or Void if `column_count` = 0 -- If `is_horizontal_scrolling_per_item`, the first visible column may be only partially visible. -- (from EV_GRID_I) require -- from EV_GRID_I is_displayed: is_displayed ensure -- from EV_GRID_I has_columns_implies_result_not_void: column_count > 0 implies Result /= Void no_columns_implies_result_void: column_count = 0 implies Result = Void first_visible_row: detachable EV_GRID_ROW -- First row visible in Current or Void if `visible_row_count` = 0 -- If `is_vertical_scrolling_per_item`, the first visible row may be only partially visible. -- (from EV_GRID_I) require -- from EV_GRID_I is_displayed: is_displayed ensure -- from EV_GRID_I has_rows_implies_result_not_void: visible_row_count > 0 implies Result /= Void no_rows_implies_result_void: visible_row_count = 0 implies Result = Void flag_set (flags, mask: INTEGER_32): BOOLEAN -- Is mask set in flags? -- (from WEL_BIT_OPERATIONS) focused_selection_color: EV_COLOR -- Color used to show selection within items while focused. -- (from EV_GRID_I) focused_selection_text_color: EV_COLOR -- Color used to show selection within items while focused. -- (from EV_GRID_I) focused_window: detachable WEL_WINDOW -- Current window which has the focus. -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists foreground_window: detachable WEL_WINDOW -- Foreground window (window with focus) -- (from WEL_WINDOWS_ROUTINES) full_screen_client_area_height: INTEGER_32 -- Height of the client area for a full-screen window -- (from WEL_SYSTEM_METRICS) full_screen_client_area_width: INTEGER_32 -- Width of the client area for a full-screen window -- (from WEL_SYSTEM_METRICS) get_next_target (a_widget: EV_WIDGET): detachable EV_DOCKABLE_TARGET -- Result is next dockable target that is `is_dockable` found by -- recursively seraching up the parenting structure from current_target. -- Result will be Void if none. -- (from EV_DOCKABLE_SOURCE_I) require -- from EV_DOCKABLE_SOURCE_I a_widget_not_void: a_widget /= Void ensure -- from EV_DOCKABLE_SOURCE_I result_is_dockable: Result /= Void implies Result.is_docking_enabled wel_has_capture: BOOLEAN -- Does this window have the capture? -- (from WEL_WINDOW) require -- from EV_DOCKABLE_SOURCE_IMP True require -- from WEL_WINDOW exists: exists has_horizontal_scroll_bar: BOOLEAN -- Does this window have a horizontal scroll bar? -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists has_menu: BOOLEAN -- Does the window have a menu? -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists has_selected_column: BOOLEAN -- Has selected column? -- (from EV_GRID_I) has_selected_item: BOOLEAN -- Has selected items? -- (from EV_GRID_I) has_selected_row: BOOLEAN -- Has selected row? -- (from EV_GRID_I) has_system_font: BOOLEAN -- Does the control use the system font? -- (from WEL_CONTROL_WINDOW) require -- from WEL_CONTROL_WINDOW exists: exists has_system_menu: BOOLEAN -- Does the window have a system menu? -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists has_vertical_scroll_bar: BOOLEAN -- Does this window have a vertical scroll bar? -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists wel_height: INTEGER_32 -- Window height -- (from WEL_WINDOW) require -- from EV_SIZEABLE_IMP not_is_destroyed: not is_destroyed require -- from WEL_WINDOW exists: exists horizontal_position: INTEGER_32 -- Current position of the horizontal scroll box -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists scroller_exists: scroller /= Void ensure -- from WEL_COMPOSITE_WINDOW result_small_enough: Result <= maximal_horizontal_position result_large_enough: Result >= minimal_horizontal_position horizontal_scroll_bar_arrow_height: INTEGER_32 -- Height of arrow bitmap on horizontal scrollbar -- (from WEL_SYSTEM_METRICS) horizontal_scroll_bar_arrow_width: INTEGER_32 -- Width of arrow bitmap on horizontal scrollbar -- (from WEL_SYSTEM_METRICS) horizontal_scroll_bar_thumb_width: INTEGER_32 -- (from WEL_SYSTEM_METRICS) icon_height: INTEGER_32 -- Height of an icon -- (from WEL_SYSTEM_METRICS) icon_spacing_height: INTEGER_32 -- Height of rectangular cell that Program Manager -- uses to position tiled icons -- (from WEL_SYSTEM_METRICS) icon_spacing_width: INTEGER_32 -- Width of rectangular cell that Program Manager -- uses to position tiled icons -- (from WEL_SYSTEM_METRICS) icon_width: INTEGER_32 -- Width of an icon -- (from WEL_SYSTEM_METRICS) imm_enabled: BOOLEAN -- Is the IMM enabled (works only for Windows 2000 and -- and Asian locale machines (Chinese, Japanese, Korean)) -- (from WEL_SYSTEM_METRICS) internal_non_sensitive: BOOLEAN -- Is Current not sensitive to input as seen -- from `interface`? -- (from EV_SENSITIVE_I) is_destroyed: BOOLEAN -- Is Current no longer usable? -- (from EV_ANY_I) is_docking_enabled: BOOLEAN -- May Current be docked to? -- (from EV_DOCKABLE_TARGET_I) is_in_min_height: BOOLEAN -- Is current recomputing its minimum height? -- (from EV_SIZEABLE_CONTAINER_IMP) is_in_min_width: BOOLEAN -- Is current recomputing its minimum width? -- (from EV_SIZEABLE_CONTAINER_IMP) Is_in_notify: CELL [BOOLEAN] -- Is current already notified from a change in its children? -- (from EV_SIZEABLE_CONTAINER_IMP) is_inside: BOOLEAN -- Is the current window inside another window? -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists is_minheight_recomputation_needed: BOOLEAN -- Does minimum height need to be recomputed? -- (from EV_SIZEABLE_CONTAINER_IMP) is_minwidth_recomputation_needed: BOOLEAN -- Does minimum width need to be recomputed? -- (from EV_SIZEABLE_CONTAINER_IMP) is_multiple_item_selection_enabled: BOOLEAN -- Does clicking or keyboard navigating via arrow keys select an item, with multiple -- item selection permitted via the use of Ctrl and Shift keys? -- (from EV_GRID_I) is_multiple_row_selection_enabled: BOOLEAN -- Does clicking or keyboard navigating via arrow keys select a row, with multiple -- row selection permitted via the use of Ctrl and Shift keys? -- (from EV_GRID_I) is_multiple_selection_enabled: BOOLEAN -- Is Current in either multiple item or row selection mode? -- (from EV_GRID_I) is_notify_originator: BOOLEAN -- Did Current launch notification process? -- (from EV_SIZEABLE_CONTAINER_IMP) is_remote_session: BOOLEAN -- Is current applications displayed using remote desktop? -- (from WEL_SYSTEM_METRICS) is_row_selection_enabled: BOOLEAN -- Is Current in either single or multiple row selection mode? -- (from EV_GRID_I) is_selection_keyboard_handling_enabled: BOOLEAN -- May an item be selected via the keyboard? -- (from EV_GRID_I) is_selection_on_click_enabled: BOOLEAN -- Will an item be selected if clicked upon by the user? -- (from EV_GRID_I) is_selection_on_single_button_click_enabled: BOOLEAN -- Will an item be selected if clicked upon via mouse button 1 only. -- Mouse buttons 1 and 2 will leave selection unchanged. -- (from EV_GRID_I) is_show_requested: BOOLEAN -- Is Current displayed in its parent? -- (from EV_WIDGET_IMP) require -- from EV_WIDGET_I True require -- from EV_SIZEABLE_IMP not_is_destroyed: not is_destroyed is_single_item_selection_enabled: BOOLEAN -- Does clicking or keyboard navigating via arrow keys select an item, unselecting -- any previously selected items? -- (from EV_GRID_I) is_single_row_selection_enabled: BOOLEAN -- Does clicking or keyboard navigating via arrow keys select a row, unselecting -- any previously selected row? -- (from EV_GRID_I) is_terminal_service: BOOLEAN -- If window in terminal service (Remote Desktop)? -- (from WEL_WINDOWS_ROUTINES) require -- from WEL_WINDOWS_ROUTINES after_2000: (create {WEL_WINDOWS_VERSION} end).is_windows_2000_compatible is_transport_enabled: BOOLEAN -- Is the transport mechanism enabled? -- (from EV_PICK_AND_DROPABLE_I) is_tree_enabled: BOOLEAN -- Is tree functionality enabled? -- (from EV_GRID_I) is_window (hwnd: POINTER): BOOLEAN -- Does hwnd point to a valid Window? -- (from WEL_WINDOWS_ROUTINES) kanji_window_height: INTEGER_32 -- Height of the Kanji window at the bottom of the -- screen. For double-byte character set versions of -- Windows only. -- (from WEL_SYSTEM_METRICS) key_down (virtual_key: INTEGER_32): BOOLEAN --Is 'virtual' key pressed -- (from WEL_WINDOWS_ROUTINES) key_locked (virtual_key: INTEGER_32): BOOLEAN --Is 'virtual' key locked -- (from WEL_WINDOWS_ROUTINES) key_to_string (key_data: INTEGER_32): STRING_32 -- Give the string associated with the key given by -- virtual_key. -- (from WEL_WINDOWS_ROUTINES) last_visible_column: detachable EV_GRID_COLUMN -- Last column visible in Current or Void if `column_count` = 0 -- The last visible column may be only partially visible. -- (from EV_GRID_I) require -- from EV_GRID_I is_displayed: is_displayed ensure -- from EV_GRID_I has_columns_implies_result_not_void: column_count > 0 implies Result /= Void no_columns_implies_result_void: column_count = 0 implies Result = Void last_visible_row: detachable EV_GRID_ROW -- Last row visible in Current or Void if `visible_row_count` = 0 -- The last visible row may be only partially visible. -- (from EV_GRID_I) require -- from EV_GRID_I is_displayed: is_displayed ensure -- from EV_GRID_I has_rows_implies_result_not_void: visible_row_count > 0 implies Result /= Void no_rows_implies_result_void: visible_row_count = 0 implies Result = Void Managed: BOOLEAN = True -- All widgets are managed. -- (from EV_WIDGET_IMP) Maximal_height: INTEGER_32 -- Maximal height allowed for the window -- (from WEL_CONTROL_WINDOW) ensure -- from WEL_WINDOW result_large_enough: Result >= minimal_height maximal_horizontal_position: INTEGER_32 -- Maxium position of the horizontal scroll box -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists scroller_exists: scroller /= Void ensure -- from WEL_COMPOSITE_WINDOW result_large_enough: Result >= minimal_horizontal_position maximal_vertical_position: INTEGER_32 -- Maxium position of the vertical scroll box -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists scroller_exists: scroller /= Void ensure -- from WEL_COMPOSITE_WINDOW result_large_enough: Result >= minimal_vertical_position Maximal_width: INTEGER_32 -- Maximal width allowed for the window -- (from WEL_CONTROL_WINDOW) ensure -- from WEL_WINDOW result_large_enough: Result >= minimal_width maximized: BOOLEAN -- Is the window maximized? -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists maximized_window_height: INTEGER_32 -- Height of a maximized window -- (from WEL_SYSTEM_METRICS) maximized_window_width: INTEGER_32 -- Width of a maximized window -- (from WEL_SYSTEM_METRICS) menu_bar_height: INTEGER_32 -- Height of single-line menu bar -- (from WEL_SYSTEM_METRICS) minimal_height: INTEGER_32 -- Minimal height allowed for the window -- (from WEL_CONTROL_WINDOW) require -- from WEL_WINDOW True ensure -- from WEL_WINDOW positive_result: Result >= 0 result_small_enough: Result <= Maximal_height minimal_horizontal_position: INTEGER_32 -- Minimum position of the horizontal scroll box -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists scroller_exists: scroller /= Void ensure -- from WEL_COMPOSITE_WINDOW result_small_enough: Result <= maximal_horizontal_position minimal_vertical_position: INTEGER_32 -- Minimum position of the vertical scroll box -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists scroller_exists: scroller /= Void ensure -- from WEL_COMPOSITE_WINDOW result_small_enough: Result <= maximal_vertical_position minimal_width: INTEGER_32 -- Minimal width allowed for the window -- (from WEL_CONTROL_WINDOW) require -- from WEL_WINDOW True ensure -- from WEL_WINDOW positive_result: Result >= 0 result_small_enough: Result <= Maximal_width minimized: BOOLEAN -- Is the window minimized? -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists mode_is_configurable_target_menu: BOOLEAN -- Is the transport mechanism a configurable target menu? -- (from EV_PICK_AND_DROPABLE_I) mode_is_drag_and_drop: BOOLEAN -- Is the transport mechanism drag and drop? -- (from EV_PICK_AND_DROPABLE_I) mode_is_pick_and_drop: BOOLEAN -- Is the transport mechanism pick and drop? -- (from EV_PICK_AND_DROPABLE_I) mode_is_target_menu: BOOLEAN -- Is the transport mechanism a target menu? -- (from EV_PICK_AND_DROPABLE_I) monitor_count: INTEGER_32 -- Number of monitors used for displaying virtual screen. -- (from WEL_SYSTEM_METRICS) mouse_button_swapped: BOOLEAN -- Are the meanings of the left and right mouse -- buttons swapped? -- (from WEL_SYSTEM_METRICS) mouse_installed: BOOLEAN -- Is a mouse installed? -- (from WEL_SYSTEM_METRICS) non_focused_selection_color: EV_COLOR -- Color used to show selection within items while not focused. -- (from EV_GRID_I) non_focused_selection_text_color: EV_COLOR -- Color used for text of selected items while not focused. -- (from EV_GRID_I) pen_installed: BOOLEAN -- Is a pen installed? -- (from WEL_SYSTEM_METRICS) placement: WEL_WINDOW_PLACEMENT -- Window placement information -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW result_not_void: Result /= Void popup_menu_right_aligned: BOOLEAN -- Are pop-up menus right-aligned relative to the -- corresponding menu-bar item? -- (from WEL_SYSTEM_METRICS) same_type (other: ANY): BOOLEAN -- Is type of current object identical to type of other? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY definition: Result = (conforms_to (other) and other.conforms_to (Current)) screen_height: INTEGER_32 -- Screen height -- (from WEL_SYSTEM_METRICS) screen_width: INTEGER_32 -- Screen width -- (from WEL_SYSTEM_METRICS) shared: BOOLEAN -- Is `item` shared by another object? -- If False (by default), `item` will -- be destroyed by `destroy_item`. -- If True, `item` will not be destroyed. -- (from WEL_ANY) wel_shown: BOOLEAN -- Is the window shown? -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists style: INTEGER_32 -- Window style -- (from WEL_WINDOW) require -- from EV_WIDGET_IMP True require -- from WEL_WINDOW exists: exists system_directory: STRING_32 -- Path of the Windows system directory -- (from WEL_WINDOWS_ROUTINES) ensure -- from WEL_WINDOWS_ROUTINES result_not_void: Result /= Void wel_text: STRING_32 -- Window text -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW result_not_void: Result /= Void text_length: INTEGER_32 -- Text length -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW positive_result: Result >= 0 text_substring (nb: INTEGER_32): WEL_STRING -- nb code units of text retrieved as a WEL_STRING. -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists valid_upper_bound: nb <= text_length tick_count: INTEGER_32 -- Number of milliseconds that have -- elapsed since Windows was started. -- (from WEL_WINDOWS_ROUTINES) ensure -- from WEL_WINDOWS_ROUTINES positive_result: Result >= 0 title_bar_height: INTEGER_32 -- Height of title bar. -- (from WEL_SYSTEM_METRICS) title_bar_image_height: INTEGER_32 -- Height of bitmap contained in title bar. -- (from WEL_SYSTEM_METRICS) title_bar_image_width: INTEGER_32 -- Width of bitmap contained in title bar. -- (from WEL_SYSTEM_METRICS) tree_node_connector_color: EV_COLOR -- Color of connectors drawn between tree nodes within Current. -- (from EV_GRID_I) user_is_sensitive: BOOLEAN -- Is the object sensitive to user input. -- (from EV_SENSITIVE_I) valid_color_constant (c: INTEGER_32): BOOLEAN -- Is c a valid color constant? -- (from WEL_COLOR_CONSTANTS) valid_hwnd_constant (c: POINTER): BOOLEAN -- Is c a valid hwnd constant? -- (from WEL_HWND_CONSTANTS) vertical_position: INTEGER_32 -- Current position of the vertical scroll box -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists scroller_exists: scroller /= Void ensure -- from WEL_COMPOSITE_WINDOW result_small_enough: Result <= maximal_vertical_position result_large_enough: Result >= minimal_vertical_position vertical_scroll_bar_arrow_height: INTEGER_32 -- Height of arrow bitmap on vertical scrollbar -- (from WEL_SYSTEM_METRICS) vertical_scroll_bar_arrow_width: INTEGER_32 -- Width of arrow bitmap on vertical scrollbar -- (from WEL_SYSTEM_METRICS) vertical_scroll_bar_thumb_height: INTEGER_32 -- Height of vertical scrollbar thumb -- (from WEL_SYSTEM_METRICS) veto_dock_function: detachable FUNCTION [EV_DOCKABLE_SOURCE, BOOLEAN] -- Function used to veto transport. -- (from EV_DOCKABLE_TARGET_I) viewable_row_indexes: ARRAYED_LIST [INTEGER_32] -- Row indexes that are currently viewable in the grid in its present state. -- For example, if the first node is a non expanded tree that has 10 subrows, the contents -- would be 1, 11, 12, 13, 14, ... -- This list only returns valid values if variable row heights, tree functionality or -- hidden nodes are enabled in the grid, otherwise the returned list is empty. -- (from EV_GRID_I) ensure -- from EV_GRID_I result_not_void: Result /= Void virtual_screen_height: INTEGER_32 -- Screen height -- (from WEL_SYSTEM_METRICS) virtual_screen_width: INTEGER_32 -- Screen width -- (from WEL_SYSTEM_METRICS) virtual_screen_x: INTEGER_32 -- Screen width -- (from WEL_SYSTEM_METRICS) virtual_screen_y: INTEGER_32 -- Screen height -- (from WEL_SYSTEM_METRICS) visible_column_indexes: ARRAYED_LIST [INTEGER_32] -- All columns that are currently visible in Current. -- (from EV_GRID_I) require -- from EV_GRID_I is_displayed: is_displayed ensure -- from EV_GRID_I result_not_void: Result /= Void visible_row_indexes: ARRAYED_LIST [INTEGER_32] -- All rows that are currently visible in Current. -- (from EV_GRID_I) require -- from EV_GRID_I is_displayed: is_displayed ensure -- from EV_GRID_I result_not_void: Result /= Void wel_width: INTEGER_32 -- Window width -- (from WEL_WINDOW) require -- from EV_SIZEABLE_IMP not_is_destroyed: not is_destroyed require -- from WEL_WINDOW exists: exists window_border_height: INTEGER_32 -- Height of the border of a window -- (from WEL_SYSTEM_METRICS) window_border_width: INTEGER_32 -- Width of the border of a window -- (from WEL_SYSTEM_METRICS) window_captured: BOOLEAN -- Has a window been captured? -- (from WEL_WINDOW) window_frame_height: INTEGER_32 -- Height of window frame for a window -- that can be resized -- (from WEL_SYSTEM_METRICS) window_frame_width: INTEGER_32 -- Width of window frame for a window -- that can be resized -- (from WEL_SYSTEM_METRICS) window_minimum_height: INTEGER_32 -- Minimum height of a window -- (from WEL_SYSTEM_METRICS) window_minimum_width: INTEGER_32 -- Minimum width of a window -- (from WEL_SYSTEM_METRICS) window_of_item (hwnd: POINTER): detachable WEL_WINDOW -- Retrieve Eiffel object associated with hwnd pointer. -- (from WEL_WINDOWS_ROUTINES) require -- from WEL_WINDOWS_ROUTINES hwnd_not_null: hwnd /= default_pointer is_window_pointer: is_window (hwnd) ensure -- from WEL_WINDOWS_ROUTINES is_wel_window: Result /= Void end implies (create {INTERNAL} end).type_conforms_to ((create {INTERNAL} end).dynamic_type (Result), (create {INTERNAL} end).dynamic_type_from_string ("WEL_WINDOW")) is_proper_wel_window: Result /= Void implies Result.item = hwnd window_rect: WEL_RECT -- Window rectangle (absolute position) -- (from WEL_WINDOW) require -- from EV_WIDGET_IMP True require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW result_not_void: Result /= Void windows_directory: STRING_32 -- Path of the Windows directory -- (from WEL_WINDOWS_ROUTINES) ensure -- from WEL_WINDOWS_ROUTINES result_not_void: Result /= Void feature -- Status setting activate_item (a_item: EV_GRID_ITEM) -- Setup a_item for user interactive editing. -- (from EV_GRID_I) require -- from EV_GRID_I a_item_not_void: a_item /= Void activate_window: detachable EV_POPUP_WINDOW -- Window used to edit grid item contents on activate. -- (from EV_GRID_I) check_drag_and_drop_release (a_x, a_y: INTEGER_32) -- End transport if in drag and drop. -- (from EV_PICK_AND_DROPABLE_IMP) check_dragable_release (a_x, a_y: INTEGER_32) -- End transport if in drag and drop. -- (from EV_DOCKABLE_SOURCE_IMP) connect_radio_grouping (a_container: EV_CONTAINER) -- Join radio grouping of a_container to Current. -- (from EV_CONTAINER_IMP) require -- from EV_CONTAINER_I a_container_not_void: a_container /= Void currently_active_item: detachable EV_GRID_ITEM -- Item that is currently active. -- (from EV_GRID_I) deactivate_item (a_item: EV_GRID_ITEM) -- Cleanup from previous call to activate. -- (from EV_GRID_I) require -- from EV_GRID_I a_item_not_void: a_item /= Void disable -- Disable mouse and keyboard input -- (from WEL_WINDOW) require -- from EV_WIDGET_IMP True require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW disabled: not is_sensitive disable_always_selected -- Allow the user to completely remove the selection from the grid by clicking on an item, -- clicking on a Void area or by Ctrl clicking the selected item itself. -- (from EV_GRID_I) disable_column_resize_immediate -- Ensure `is_column_resize_immediate` is False. -- (from EV_GRID_I) ensure -- from EV_GRID_I not_is_column_resize_immediate: not is_column_resize_immediate disable_column_separators -- Ensure `are_column_separators_enabled` is False. -- (from EV_GRID_I) ensure -- from EV_GRID_I column_separators_disabled: not are_column_separators_enabled disable_columns_drawn_above_rows -- Ensure `are_columns_drawn_above_rows` is False. -- (from EV_GRID_I) ensure -- from EV_GRID_I columns_drawn_below_rows: not are_columns_drawn_above_rows disable_commands -- Disable commands execution. -- (from WEL_WINDOW) ensure -- from WEL_WINDOW commands_disabled: not commands_enabled disable_default_processing -- Disable default window processing. -- The standard window procedure will not be called for -- each messages received by the window and then the -- normal behavior will not occur. -- (from WEL_WINDOW) require -- from EV_WIDGET_IMP True ensure -- from WEL_WINDOW default_processing_disabled: not default_processing disable_dockable -- Ensure Current is not dockable -- (from EV_DOCKABLE_SOURCE_I) ensure -- from EV_DOCKABLE_SOURCE_I not_is_dockable: not is_dockable disable_docking -- Ensure `is_docking_enabled` is False. -- Current will not accept docking. -- (from EV_DOCKABLE_TARGET_I) require -- from EV_DOCKABLE_TARGET_I application_exists: attached (create {EV_ENVIRONMENT} end).application ensure -- from EV_DOCKABLE_TARGET_I not_dockable: not is_docking_enabled id_not_stored_in_application: attached (create {EV_ENVIRONMENT} end).application as l_application and then not l_application.implementation.dockable_targets.has (attached_interface.object_id) disable_drag_accept_files -- Disallow Current from being a file drag and drop target. -- (from WEL_WINDOW) require -- from EV_WIDGET_IMP True require -- from WEL_WINDOW exists disable_dynamic_content -- Ensure contents of Current are not dynamic and are no longer retrieved as such. -- (from EV_GRID_I) ensure -- from EV_GRID_I content_not_dynamic: not is_content_partially_dynamic disable_external_docking -- Forbid Current to be docked into an EV_DOCKABLE_DIALOG -- When there is no valid EV_DRAGABLE_TARGET upon completion -- of the transport? -- (from EV_DOCKABLE_SOURCE_I) require -- from EV_DOCKABLE_SOURCE_I is_dockable: is_dockable ensure -- from EV_DOCKABLE_SOURCE_I not_externally_dockable: not is_external_docking_enabled disable_external_docking_relative -- Assign False to `is_external_docking_relative`, ensuring that -- a dockable dialog displayed when Current is docked externally -- is displayed as a standard window. -- (from EV_DOCKABLE_SOURCE_I) require -- from EV_DOCKABLE_SOURCE_I external_docking_enabled: is_external_docking_enabled ensure -- from EV_DOCKABLE_SOURCE_I external_docking_not_relative: not is_external_docking_relative disable_full_redraw_on_virtual_position_change -- Ensure `is_full_redraw_on_virtual_position_change_enabled` is False. -- (from EV_GRID_I) ensure -- from EV_GRID_I not_is_full_redraw_on_virtual_position_change_enabled: not is_full_redraw_on_virtual_position_change_enabled disable_horizontal_overscroll -- Ensure `is_horizontal_overscroll_enabled` is False. -- (from EV_GRID_I) ensure -- from EV_GRID_I not_is_horizontal_overscroll_enabled: not is_horizontal_overscroll_enabled disable_horizontal_scrolling_per_item -- Ensure horizontal scrolling is performed on a per-pixel basis. -- (from EV_GRID_I) ensure -- from EV_GRID_I horizontal_scrolling_performed_per_pixel: not is_horizontal_scrolling_per_item disable_item_tab_navigation -- Disable tabbed item navigation so that tabbing loses focus from the grid by default. -- (from EV_GRID_I) disable_pebble_positioning -- Assign False to `pebble_positioning_enabled`. -- (from EV_PICK_AND_DROPABLE_I) disable_resizing_divider -- Ensure no vertical divider is displayed during column resizing. -- (from EV_GRID_I) ensure -- from EV_GRID_I resizing_divider_disabled: not is_resizing_divider_enabled disable_row_height_fixed -- Permit rows to have varying heights. -- (from EV_GRID_I) require -- from EV_GRID_I not_dynamic_content_enabled_with_height_not_bounded: not (is_content_partially_dynamic and not is_vertical_overscroll_enabled) disable_row_separators -- Ensure `are_row_separators_enabled` is False. -- (from EV_GRID_I) ensure -- from EV_GRID_I row_separators_disabled: not are_row_separators_enabled disable_selection_keyboard_handling -- Disable selection handling of items via the keyboard. -- (from EV_GRID_I) ensure -- from EV_GRID_I selection_keyboard_handling_disabled: not is_selection_keyboard_handling_enabled disable_selection_on_click -- Disable selection handling when items are clicked upon. -- (from EV_GRID_I) ensure -- from EV_GRID_I selection_on_click_disabled: not is_selection_on_click_enabled disable_sensitive -- Set `item` insensitive to user actions. -- (from EV_SINGLE_CHILD_CONTAINER_IMP) require -- from EV_SENSITIVE_I True disable_solid_resizing_divider -- Ensure resizing divider displayed during column resizing -- is displayed as a dashed line. -- (from EV_GRID_I) ensure -- from EV_GRID_I dashed_resizing_divider: not is_resizing_divider_solid disable_transport -- Deactivate pick/drag and drop mechanism. -- (from EV_PICK_AND_DROPABLE_IMP) require -- from EV_PICK_AND_DROPABLE_I True ensure -- from EV_PICK_AND_DROPABLE_I is_transport_disabled: not is_transport_enabled disable_tree -- Disable tree functionality for Current. -- All subrows of rows contained are unparented, -- which flattens the tree structure. -- (from EV_GRID_I) ensure -- from EV_GRID_I tree_disabled: not is_tree_enabled disable_vertical_overscroll -- Ensure `is_vertical_overscroll_enabled` is False. -- (from EV_GRID_I) require -- from EV_GRID_I dynamic_content_not_enabled_with_variable_row_heights: not (is_content_partially_dynamic and not is_row_height_fixed) ensure -- from EV_GRID_I not_is_vertical_overscroll_enabled: not is_vertical_overscroll_enabled disable_vertical_scrolling_per_item -- Ensure vertical scrolling is performed on a per-pixel basis. -- (from EV_GRID_I) ensure -- from EV_GRID_I vertical_scrolling_performed_per_pixel: not is_vertical_scrolling_per_item dragable_motion (a_x, a_y, a_screen_x, a_screen_y: INTEGER_32) -- If in drag/pick and drop then update. -- (from EV_DOCKABLE_SOURCE_IMP) dragable_press (a_x, a_y, a_button, a_screen_x, a_screen_y: INTEGER_32) -- Process a_button to start/stop the drag/pick and -- drop mechanism. -- (from EV_DOCKABLE_SOURCE_IMP) enable -- Enable mouse and keyboard input. -- (from WEL_WINDOW) require -- from EV_WIDGET_IMP True require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW enabled: is_sensitive enable_always_selected -- Ensure that the user may not completely remove the selection from Current. -- (from EV_GRID_I) enable_column_resize_immediate -- Ensure `is_column_resize_immediate` is True. -- (from EV_GRID_I) ensure -- from EV_GRID_I is_column_resize_immediate: is_column_resize_immediate enable_column_separators -- Ensure `are_column_separators_enabled` is True. -- (from EV_GRID_I) ensure -- from EV_GRID_I column_separators_enabled: are_column_separators_enabled enable_columns_drawn_above_rows -- Ensure `are_columns_drawn_above_rows` is True. -- (from EV_GRID_I) ensure -- from EV_GRID_I columns_drawn_above_rows: are_columns_drawn_above_rows enable_commands -- Enable commands execution. -- (from WEL_WINDOW) ensure -- from WEL_WINDOW commands_enabled: commands_enabled enable_default_processing -- Enable default window processing. -- The standard window procedure will be called for -- each messages received by the window and then the -- normal behavior will occur. -- (from WEL_WINDOW) ensure -- from WEL_WINDOW default_processing_enabled: default_processing enable_dockable -- Allow Current to be dockable -- (from EV_DOCKABLE_SOURCE_I) ensure -- from EV_DOCKABLE_SOURCE_I is_dockable: is_dockable enable_docking -- Ensure `is_docking_enabled` is True. -- Current will accept docking from a -- compatible EV_DOCKABLE_SOURCE. -- (from EV_DOCKABLE_TARGET_I) require -- from EV_DOCKABLE_TARGET_I application_exists: attached (create {EV_ENVIRONMENT} end).application ensure -- from EV_DOCKABLE_TARGET_I is_dockable: is_docking_enabled id_stored_in_application: attached (create {EV_ENVIRONMENT} end).application as l_application and then l_application.implementation.dockable_targets.has (attached_interface.object_id) enable_drag_accept_files -- Allow Current to be a file drag and drop target. -- (from WEL_WINDOW) require -- from EV_WIDGET_IMP True require -- from WEL_WINDOW exists enable_external_docking -- Allow Current to be docked into an EV_DOCKABLE_DIALOG -- When there is no valid EV_DRAGABLE_TARGET upon completion -- of the transport? -- (from EV_DOCKABLE_SOURCE_I) require -- from EV_DOCKABLE_SOURCE_I is_dockable: is_dockable ensure -- from EV_DOCKABLE_SOURCE_I is_externally_dockable: is_external_docking_enabled enable_external_docking_relative -- Assign True to `is_external_docking_relative`, ensuring that -- a dockable dialog displayed when Current is docked externally -- is displayed relative to the top level window. -- (from EV_DOCKABLE_SOURCE_I) require -- from EV_DOCKABLE_SOURCE_I external_docking_enabled: is_external_docking_enabled ensure -- from EV_DOCKABLE_SOURCE_I external_docking_not_relative: is_external_docking_relative enable_full_redraw_on_virtual_position_change -- Ensure `is_full_redraw_on_virtual_position_change_enabled` is True. -- (from EV_GRID_I) ensure -- from EV_GRID_I is_full_redraw_on_virtual_position_change_enabled: is_full_redraw_on_virtual_position_change_enabled enable_horizontal_overscroll -- Ensure `is_horizontal_overscroll_enabled` is True. -- (from EV_GRID_I) ensure -- from EV_GRID_I is_horizontal_overscroll_enabled: is_horizontal_overscroll_enabled enable_horizontal_scrolling_per_item -- Ensure horizontal scrolling is performed on a per-item basis. -- (from EV_GRID_I) ensure -- from EV_GRID_I horizontal_scrolling_performed_per_item: is_horizontal_scrolling_per_item enable_item_tab_navigation -- Ensure that tab navigation occurs for each navigatable item. -- (from EV_GRID_I) enable_multiple_item_selection -- Allow the user to select more than one item via clicking or navigating using the keyboard arrow keys. -- Multiple items may be selected via Ctrl and Shift keys. -- (from EV_GRID_I) ensure -- from EV_GRID_I multiple_item_selection_enabled: is_multiple_item_selection_enabled enable_multiple_row_selection -- Allow the user to select more than one row via clicking or navigating using the keyboard arrow keys. -- Multiple rows may be selected via Ctrl and Shift keys. -- (from EV_GRID_I) ensure -- from EV_GRID_I multiple_row_selection_enabled: is_multiple_row_selection_enabled enable_partial_dynamic_content -- Ensure contents of Current must be retrieved when required via -- content_requested_actions only if the item is not already set -- in Current. -- (from EV_GRID_I) require -- from EV_GRID_I not_row_height_variable_and_vertical_overscroll_enabled: not (not is_row_height_fixed and is_vertical_overscroll_enabled) not_row_height_variable_and_vertical_scrolling_per_pixel: not (not is_row_height_fixed and not is_vertical_scrolling_per_item) ensure -- from EV_GRID_I content_partially_dynamic: is_content_partially_dynamic enable_pebble_positioning -- Assign True to `pebble_positioning_enabled`. -- (from EV_PICK_AND_DROPABLE_I) enable_resizing_divider -- Ensure a vertical divider is displayed during column resizing. -- (from EV_GRID_I) ensure -- from EV_GRID_I resizing_divider_enabled: is_resizing_divider_enabled enable_row_height_fixed -- Ensure all rows have the same height. -- (from EV_GRID_I) enable_row_separators -- Ensure `are_row_separators_enabled` is True. -- (from EV_GRID_I) ensure -- from EV_GRID_I row_separators_enabled: are_row_separators_enabled enable_selection_keyboard_handling -- Enable selection handling of items via the keyboard. -- (from EV_GRID_I) ensure -- from EV_GRID_I selection_keyboard_handling_enabled: is_selection_keyboard_handling_enabled enable_selection_on_click -- Enable selection handling of items when clicked upon. -- (from EV_GRID_I) ensure -- from EV_GRID_I selection_on_click_enabled: is_selection_on_click_enabled enable_selection_on_single_button_click -- Enable selection handling of items when clicked upon via mouse button 1. -- This is useful for implementing Contextual Menus where the selection may need -- to remain unchanged when using mouse button 3 for instance. -- (from EV_GRID_I) ensure -- from EV_GRID_I selection_on_single_click_enabled: is_selection_on_single_button_click_enabled and then is_selection_on_click_enabled enable_sensitive -- Set `item` sensitive to user actions. -- (from EV_SINGLE_CHILD_CONTAINER_IMP) require -- from EV_SENSITIVE_I True enable_single_item_selection -- Allow the user to select a single item via clicking or navigating using the keyboard arrow keys. -- (from EV_GRID_I) ensure -- from EV_GRID_I single_item_selection_enabled: is_single_item_selection_enabled enable_single_row_selection -- Allow the user to select a single row via clicking or navigating using the keyboard arrow keys. -- (from EV_GRID_I) ensure -- from EV_GRID_I single_row_selection_enabled: is_single_row_selection_enabled enable_solid_resizing_divider -- Ensure resizing divider displayed during column resizing -- is displayed as a solid line. -- (from EV_GRID_I) ensure -- from EV_GRID_I solid_resizing_divider: is_resizing_divider_solid enable_transport -- Activate pick/drag and drop mechanism. -- (from EV_PICK_AND_DROPABLE_IMP) require -- from EV_PICK_AND_DROPABLE_I pebble_not_void: pebble /= Void or pebble_function /= Void ensure -- from EV_PICK_AND_DROPABLE_I is_transport_enabled: is_transport_enabled enable_tree -- Enable tree functionality for Current. -- Must be True to perform any tree structure functions on Current. -- Use `enable_tree` and `disable_tree` to set this state. -- (from EV_GRID_I) ensure -- from EV_GRID_I tree_enabled: is_tree_enabled enable_vertical_overscroll -- Ensure `is_vertical_overscroll_enabled` is True. -- (from EV_GRID_I) ensure -- from EV_GRID_I is_vertical_overscroll_enabled: is_vertical_overscroll_enabled enable_vertical_scrolling_per_item -- Ensure vertical scrolling is performed on a per-item basis. -- (from EV_GRID_I) ensure -- from EV_GRID_I vertical_scrolling_performed_per_item: is_vertical_scrolling_per_item escape_pnd -- Escape the pick and drop. -- (from EV_PICK_AND_DROPABLE_IMP) ensure -- from EV_PICK_AND_DROPABLE_IMP not_in_transport: not transport_executing has_horizontal_scrolling_per_item_just_changed: BOOLEAN -- Has the horizontal scrolling method just been changed between -- per item and per pixel? This is used to adjust the scroll bar's position -- to approximate it's original position during the recomputation of it's -- settings in `recompute_horizontal_scroll_bar`. -- (from EV_GRID_I) has_parent: BOOLEAN -- Is Current parented? -- (from EV_WIDGET_IMP) require -- from EV_SENSITIVE_I True has_vertical_scrolling_per_item_just_changed: BOOLEAN -- Has the vertical scrolling method just been changed between -- per item and per pixel? This is used to adjust the scroll bar's position -- to approximate it's original position during the recomputation of it's -- settings in `recompute_vertical_scroll_bar`. -- (from EV_GRID_I) hide -- Hide Current. -- (from EV_WIDGET_IMP) require -- from EV_WIDGET_I True require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW hidden: not wel_shown hide_column (a_column: INTEGER_32) -- Ensure column a_column is not visible in Current. -- (from EV_GRID_I) require -- from EV_GRID_I a_column_within_bounds: a_column > 0 and a_column <= column_count ensure -- from EV_GRID_I column_not_displayed: not column_displayed (a_column) hide_header -- Ensure header is hidden. -- (from EV_GRID_I) ensure -- from EV_GRID_I header_not_displayed: not is_header_displayed hide_horizontal_scroll_bar -- Ensure no horizontal scroll bar is displayed in Current -- at any time. -- (from EV_GRID_I) ensure -- from EV_GRID_I not_is_horizontal_scroll_bar_show_requested: not is_horizontal_scroll_bar_show_requested hide_tree_node_connectors -- Ensure no connectors are displayed between nodes of tree structure in Current. -- (from EV_GRID_I) ensure -- from EV_GRID_I tree_node_connectors_hidden: not are_tree_node_connectors_shown hide_vertical_scroll_bar -- Ensure no vertical scroll bar is displayed in Current -- at any time. -- (from EV_GRID_I) ensure -- from EV_GRID_I not_is_vertical_scroll_bar_show_requested: not is_vertical_scroll_bar_show_requested horizontal_update (inc, position: INTEGER_32) -- Update the window and the horizontal scroll box with -- inc and position. -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists scroller_not_void: scroller /= Void position_small_enough: attached scroller as l_scroller and then l_scroller.valid_maximal_horizontal_position (position) position_large_enough: position >= minimal_horizontal_position ensure -- from WEL_COMPOSITE_WINDOW horizontal_position_set: horizontal_position = position is_always_selected: BOOLEAN -- Ensure that the user may not completely remove the selection from Current. -- (from EV_GRID_I) is_horizontal_scroll_bar_show_requested: BOOLEAN -- Will a horizontal scroll bar be displayed in Current when -- `virtual_width` exceeds `viewable_width`? -- (from EV_GRID_I) is_item_height_changing: BOOLEAN -- Is height of items in Current changing? -- (from EV_GRID_I) is_item_tab_navigation_enabled: BOOLEAN -- Is item navigation enabled for tabbing between items? -- (from EV_GRID_I) is_vertical_scroll_bar_show_requested: BOOLEAN -- Will a vertical scroll bar be displayed in Current when -- `virtual_height` exceeds `viewable_height`? -- (from EV_GRID_I) item_pebble_function: detachable FUNCTION [detachable EV_GRID_ITEM, detachable ANY] -- User pebble function -- (from EV_GRID_I) lock_update -- Ensure `is_locked` is True, thereby preventing graphical -- updates until `unlock_update` is called. -- (from EV_GRID_I) ensure -- from EV_GRID_I is_locked: is_locked maximize -- Maximize the window -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW maximized: maximized merge_radio_button_groups (other: EV_CONTAINER) -- Merge Current radio button group with that of other. -- (from EV_CONTAINER_I) minimize -- Minimize the window and display its icon -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW minimized: minimized parent_is_sensitive: BOOLEAN -- Is parent of Current sensitive? -- (from EV_WIDGET_IMP) require -- from EV_SENSITIVE_I True pnd_motion (a_x, a_y, a_screen_x, a_screen_y: INTEGER_32) -- If in drag/pick and drop then update. -- (from EV_PICK_AND_DROPABLE_IMP) pnd_press (a_x, a_y, a_button, a_screen_x, a_screen_y: INTEGER_32) -- Process a_button to start/stop the drag/pick and -- drop mechanism. -- (from EV_PICK_AND_DROPABLE_IMP) redraw -- Force Current to be re-drawn when next idle. -- (from EV_GRID_I) release_capture -- Release the mouse capture after a call -- to `set_capture`. -- (from WEL_WINDOW) require -- from EV_PICK_AND_DROPABLE_IMP True require -- from EV_DOCKABLE_SOURCE_IMP True require -- from WEL_WINDOW exists: exists has_capture: wel_has_capture ensure -- from WEL_WINDOW not_has_capture: not wel_has_capture remove_default_key_processing_handler -- Ensure `default_key_processing_handler` is Void. -- (from EV_WIDGET_I) ensure -- from EV_WIDGET_I default_key_processing_handler_removed: default_key_processing_handler = Void remove_pebble -- Remove `pebble`. -- (from EV_PICK_AND_DROPABLE_I) ensure -- from EV_PICK_AND_DROPABLE_I pebble_removed: pebble = Void and pebble_function = Void is_transport_disabled: not is_transport_enabled remove_real_source -- Ensure `real_source` is Void. -- (from EV_DOCKABLE_SOURCE_I) require -- from EV_DOCKABLE_SOURCE_I is_dockable: is_dockable ensure -- from EV_DOCKABLE_SOURCE_I real_source_void: real_source = Void remove_real_target -- Ensure `real_target` is Void. -- (from EV_WIDGET_I) ensure -- from EV_WIDGET_I real_target_void: real_target = Void reset_pebble_function -- Reset any values created by calling `pebble_function`. -- (from EV_PICK_AND_DROPABLE_I) ensure -- from EV_PICK_AND_DROPABLE_I pebble_function_preserved: pebble_function = old pebble_function pebble_without_function: pebble_function = Void implies (pebble = old pebble) pebble_with_function: pebble_function /= Void implies pebble = Void restore -- Restore the window to its -- original size and position after -- `minimize` or `maximize` -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists select_column (a_column: INTEGER_32) -- Ensure all items in a_column are selected. -- (from EV_GRID_I) require -- from EV_GRID_I a_column_within_bounds: a_column > 0 and a_column <= column_count column_displayed: column_displayed (a_column) ensure -- from EV_GRID_I column_selected: column (a_column).is_selected select_row (a_row: INTEGER_32) -- Ensure all items in a_row are selected. -- (from EV_GRID_I) require -- from EV_GRID_I a_row_within_bounds: a_row > 0 and a_row <= row_count ensure -- from EV_GRID_I row_selected: row (a_row).is_selected set_actual_drop_target_agent (an_agent: like actual_drop_target_agent) -- Assign an_agent to `actual_drop_target_agent`. -- (from EV_WIDGET_I) require -- from EV_WIDGET_I an_agent_not_void: an_agent /= Void ensure -- from EV_WIDGET_I assigned: actual_drop_target_agent = an_agent set_background_color (color: EV_COLOR) -- Make color the new `background_color` require -- from EV_COLORIZABLE_I a_color_not_void: color /= Void ensure -- from EV_COLORIZABLE_I background_color_assigned: is_initialized implies background_color.is_equal (color) set_capture -- Set the mouse capture to the Current window. -- Once the window has captured the mouse, all -- mouse input is directed to this window, regardless -- of whether the cursor is over that window. Only -- one window can have the mouse capture at a time. -- -- Works only for windows in the same thread as your -- application. -- (from WEL_WINDOW) require -- from EV_PICK_AND_DROPABLE_IMP True require -- from EV_DOCKABLE_SOURCE_IMP True require -- from WEL_WINDOW exists: exists has_not_capture: not wel_has_capture set_column_count_to (a_column_count: INTEGER_32) -- Resize Current to have a_column_count columns. -- (from EV_GRID_I) require -- from EV_GRID_I a_column_count_not_negative: a_column_count >= 0 ensure -- from EV_GRID_I column_count_set: column_count = a_column_count set_configurable_target_menu_handler (a_handler: like configurable_target_menu_handler) -- Set Configurable Target Menu Handler to a_handler. -- (from EV_GRID_I) require -- from EV_PICK_AND_DROPABLE_I True set_configurable_target_menu_mode -- Set transport mechanism to a configurable target_menu. -- (from EV_GRID_I) require -- from EV_PICK_AND_DROPABLE_I True ensure -- from EV_PICK_AND_DROPABLE_I mode_is_target_menu: mode_is_configurable_target_menu set_default_colors -- Set foreground and background color to their default values. -- (from EV_GRID_I) require -- from EV_COLORIZABLE_I True set_default_minimum_size -- Initialize the size of Current. -- Redefined by many widgets. -- (from EV_WIDGET_IMP) set_drag_and_drop_mode -- Set transport mechanism to drag and drop, -- (from EV_GRID_I) require -- from EV_PICK_AND_DROPABLE_I True ensure -- from EV_PICK_AND_DROPABLE_I mode_is_drag_and_drop: mode_is_drag_and_drop set_dynamic_content_function (a_function: FUNCTION [INTEGER_32, INTEGER_32, EV_GRID_ITEM]) -- Function which computes the item that resides in a particular position of the -- grid while `is_content_partially_dynamic` or `is_content_completely_dynamic. -- (from EV_GRID_I) require -- from EV_GRID_I a_function_not_void: a_function /= Void ensure -- from EV_GRID_I dynamic_content_function_set: dynamic_content_function = a_function set_ex_style (an_ex_style: INTEGER_32) -- Set an_ex_style with `ex_style`. -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists set_first_visible_row (a_row: INTEGER_32) -- Set a_row as the first row visible in Current as long -- as there are enough rows after a_row to fill the remainder of Current. -- (from EV_GRID_I) require -- from EV_GRID_I valid_row_index: a_row >= 1 and a_row <= row_count set_focus -- Grab keyboard focus. -- (from EV_GRID_I) require -- from EV_WIDGET_I True require -- from WEL_WINDOW exists: exists set_focused_selection_color (a_color: EV_COLOR) -- Assign a_color to `focused_selection_color`. -- (from EV_GRID_I) require -- from EV_GRID_I a_color_not_void: a_color /= Void ensure -- from EV_GRID_I focused_selection_color_set: focused_selection_color = a_color set_focused_selection_text_color (a_color: EV_COLOR) -- Assign a_color to `focused_selection_text_color`. -- (from EV_GRID_I) require -- from EV_GRID_I a_color_not_void: a_color /= Void ensure -- from EV_GRID_I focused_selection_text_color_set: focused_selection_text_color = a_color set_foreground_color (color: EV_COLOR) -- Make color the new `foreground_color` require -- from EV_COLORIZABLE_I a_color_not_void: color /= Void ensure -- from EV_COLORIZABLE_I foreground_color_assigned: is_initialized implies foreground_color.is_equal (color) set_horizontal_position (position: INTEGER_32) -- Set `horizontal_position` with position. -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists scroller_exists: scroller /= Void position_small_enough: attached scroller as l_scroller_var and then l_scroller_var.valid_maximal_horizontal_position (position) position_large_enough: position >= minimal_horizontal_position ensure -- from WEL_COMPOSITE_WINDOW horizontal_position_set: horizontal_position = position set_horizontal_range (minimum, maximum: INTEGER_32) -- Set `minimal_horizontal_position` and -- `maximal_horizontal_position` with minimum and -- maximum. -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists scroller_exists: scroller /= Void consistent_range: minimum <= maximum ensure -- from WEL_COMPOSITE_WINDOW minimal_horizontal_position_set: minimal_horizontal_position = minimum maximal_horizontal_position_set: maximal_horizontal_position = maximum set_icon (a_small_icon: WEL_ICON; a_big_icon: WEL_ICON) -- Set the small (16x16) and the normal (32x32) icon for this window. -- -- Note: Set a_small_icon to Void to remove the small icon and -- a_big_icon to Void to remove the big icon. -- (from WEL_COMPOSITE_WINDOW) set_menu (a_menu: WEL_MENU) -- Set `menu` with a_menu. -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists a_menu_not_void: a_menu /= Void a_menu_exists: a_menu.exists ensure -- from WEL_COMPOSITE_WINDOW has_menu: has_menu menu_set: menu.item = a_menu.item set_minheight_recomputation_needed (flag: BOOLEAN) -- Set `is_minheight_recomputation_needed` with flag? -- (from EV_SIZEABLE_CONTAINER_IMP) set_minwidth_recomputation_needed (flag: BOOLEAN) -- Set `is_minwidth_recomputation_needed` with flag? -- (from EV_SIZEABLE_CONTAINER_IMP) set_node_pixmaps (an_expand_node_pixmap, a_collapse_node_pixmap: EV_PIXMAP) -- Assign an_expand_node_pixmap to `expand_node_pixmap` and a_collapse_node_pixmap -- to `collapse_node_pixmap`. These pixmaps are used in rows containing subrows for -- expanding/collapsing the row. -- (from EV_GRID_I) require -- from EV_GRID_I pixmaps_not_void: an_expand_node_pixmap /= Void and a_collapse_node_pixmap /= Void pixmaps_dimensions_identical: an_expand_node_pixmap.width = a_collapse_node_pixmap.width and an_expand_node_pixmap.height = a_collapse_node_pixmap.height ensure -- from EV_GRID_I pixmaps_set: expand_node_pixmap = an_expand_node_pixmap and collapse_node_pixmap = a_collapse_node_pixmap set_non_focused_selection_color (a_color: EV_COLOR) -- Assign a_color to `non_focused_selection_color`. -- (from EV_GRID_I) require -- from EV_GRID_I a_color_not_void: a_color /= Void ensure -- from EV_GRID_I non_focused_selection_color_set: non_focused_selection_color = a_color set_non_focused_selection_text_color (a_color: EV_COLOR) -- Assign a_color to `non_focused_selection_text_color`. -- (from EV_GRID_I) require -- from EV_GRID_I a_color_not_void: a_color /= Void ensure -- from EV_GRID_I non_focused_selection_text_color_set: non_focused_selection_text_color = a_color set_pebble (a_pebble: ANY) -- Assign a_pebble to `pebble`. -- (from EV_GRID_I) require -- from EV_PICK_AND_DROPABLE_I a_pebble_not_void: a_pebble /= Void ensure -- from EV_PICK_AND_DROPABLE_I pebble_assigned: pebble = a_pebble is_transport_enabled: is_transport_enabled set_pebble_function (a_function: FUNCTION [detachable ANY]) -- Assign a_function to `pebble_function`. -- (from EV_GRID_I) require -- from EV_PICK_AND_DROPABLE_I a_function_not_void: a_function /= Void ensure -- from EV_PICK_AND_DROPABLE_I pebble_function_assigned: pebble_function = a_function is_transport_enabled: is_transport_enabled set_pebble_position (a_x, a_y: INTEGER_32) -- Set the initial position for pick and drop relative to Current. -- (from EV_PICK_AND_DROPABLE_I) ensure -- from EV_PICK_AND_DROPABLE_I pick_x_assigned: pick_x.to_integer_32 = a_x pick_y_assigned: pick_y.to_integer_32 = a_y set_pick_and_drop_mode -- Set transport mechanism to pick and drop, -- (from EV_GRID_I) require -- from EV_PICK_AND_DROPABLE_I True ensure -- from EV_PICK_AND_DROPABLE_I mode_is_pick_and_drop: mode_is_pick_and_drop set_real_source (dockable_source: EV_DOCKABLE_SOURCE) -- Set dockable_source to be the widget moved when a -- drag begins on Current. -- (from EV_DOCKABLE_SOURCE_I) require -- from EV_DOCKABLE_SOURCE_I is_dockable: is_dockable dockable_source_not_void: dockable_source /= Void ensure -- from EV_DOCKABLE_SOURCE_I real_source_assigned: real_source = dockable_source set_real_target (a_target: EV_DOCKABLE_TARGET) -- Assign a_target to `real_target`. -- (from EV_WIDGET_I) require -- from EV_WIDGET_I target_not_void: a_target /= Void ensure -- from EV_WIDGET_I assigned: real_target = a_target set_row_count_to (a_row_count: INTEGER_32) -- Resize Current to have a_row_count columns. -- (from EV_GRID_I) require -- from EV_GRID_I a_row_count_non_negative: a_row_count >= 0 ensure -- from EV_GRID_I row_count_set: row_count = a_row_count set_row_height (a_row_height: INTEGER_32) -- Set height of all rows within Current to `a_row_height -- If not `is_row_height_fixed` then use the height individually per row instead. -- (from EV_GRID_I) require -- from EV_GRID_I a_row_height_positive: a_row_height >= 1 ensure -- from EV_GRID_I row_height_set: row_height = a_row_height set_separator_color (a_color: EV_COLOR) -- Set a_color as `separator_color`. -- (from EV_GRID_I) require -- from EV_GRID_I a_color_not_void: a_color /= Void ensure -- from EV_GRID_I separator_color_set: separator_color = a_color set_shared -- Set `shared` to True. -- (from WEL_ANY) ensure -- from WEL_ANY shared: shared set_style (a_style: INTEGER_32) -- Set `style` with a_style. -- (from WEL_WINDOW) require -- from EV_WIDGET_IMP True require -- from WEL_WINDOW exists: exists set_subrow_indent (a_subrow_indent: INTEGER_32) -- Set `subrow_indent` to a_subrow_indent. -- (from EV_GRID_I) require -- from EV_GRID_I a_subrow_indent_non_negtive: a_subrow_indent >= 0 ensure -- from EV_GRID_I subrow_indent_set: subrow_indent = a_subrow_indent set_target_menu_mode -- Set transport mechanism to a target_menu. -- (from EV_GRID_I) require -- from EV_PICK_AND_DROPABLE_I True ensure -- from EV_PICK_AND_DROPABLE_I mode_is_target_menu: mode_is_target_menu set_tree_node_connector_color (a_color: EV_COLOR) -- Set a_color as `tree_node_connector_color`. -- (from EV_GRID_I) require -- from EV_GRID_I a_color_not_void: a_color /= Void ensure -- from EV_GRID_I tree_node_connector_color_set: tree_node_connector_color = a_color set_unshared -- Set `shared` to False. -- (from WEL_ANY) ensure -- from WEL_ANY unshared: not shared set_vertical_position (position: INTEGER_32) -- Set `vertical_position` with position. -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists scroller_exists: scroller /= Void position_small_enough: attached scroller as l_scroller_var and then l_scroller_var.valid_maximal_vertical_position (position) position_large_enough: position >= minimal_vertical_position ensure -- from WEL_COMPOSITE_WINDOW vertical_position_set: vertical_position = position set_vertical_range (minimum, maximum: INTEGER_32) -- Set `minimal_vertical_position` and -- `maximal_vertical_position` with minimum and -- maximum. -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists scroller_exists: scroller /= Void consistent_range: minimum <= maximum ensure -- from WEL_COMPOSITE_WINDOW minimal_vertical_position_set: minimal_vertical_position = minimum maximal_vertical_position_set: maximal_vertical_position = maximum set_veto_dock_function (a_function: detachable FUNCTION [EV_DOCKABLE_SOURCE, BOOLEAN]) -- Assign a_function to `veto_dock_function`. -- (from EV_DOCKABLE_TARGET_I) require -- from EV_DOCKABLE_TARGET_I a_function_not_void: a_function /= Void ensure -- from EV_DOCKABLE_TARGET_I veto_function_set: veto_dock_function = a_function set_virtual_position (virtual_x, virtual_y: INTEGER_32) -- Move Current to virtual position virtual_x, virtual_y. -- (from EV_GRID_I) require -- from EV_GRID_I virtual_x_valid: virtual_x >= 0 and virtual_x <= maximum_virtual_x_position virtual_y_valid: virtual_y >= 0 and virtual_y <= maximum_virtual_y_position ensure -- from EV_GRID_I virtual_position_set: virtual_x_position = virtual_x and virtual_y_position = virtual_y show -- Show Current. -- Need to notify the parent. -- (from EV_WIDGET_IMP) require -- from EV_WIDGET_I True require -- from WEL_WINDOW exists: exists show_column (a_column: INTEGER_32) -- Ensure column a_column is visible in Current. -- (from EV_GRID_I) require -- from EV_GRID_I a_column_within_bounds: a_column > 0 and a_column <= column_count ensure -- from EV_GRID_I column_displayed: column_displayed (a_column) show_configurable_target_menu (a_x, a_y: INTEGER_32) -- Show the configurable target menu at position a_x, a_y relative to Current. -- (from EV_PICK_AND_DROPABLE_I) show_header -- Ensure header displayed. -- (from EV_GRID_I) ensure -- from EV_GRID_I header_displayed: is_header_displayed show_horizontal_scroll_bar -- Ensure a horizontal scroll bar is displayed in Current -- when required. Note that this does not force the horizontal -- scroll bar to be visible, simply ensures that when `virtual_width` -- is greater than `viewable_width`, the scroll bar is displayed. -- (from EV_GRID_I) ensure -- from EV_GRID_I is_horizontal_scroll_bar_show_requested: is_horizontal_scroll_bar_show_requested show_tree_node_connectors -- Ensure connectors are displayed between nodes of tree structure in Current. -- (from EV_GRID_I) ensure -- from EV_GRID_I tree_node_connectors_shown: are_tree_node_connectors_shown show_vertical_scroll_bar -- Ensure a vertical scroll bar is displayed in Current -- when required. Note that this does not force the vertical -- scroll bar to be visible, simply ensures that when `virtual_height` -- is greater than `viewable_height`, the scroll bar is displayed. -- (from EV_GRID_I) ensure -- from EV_GRID_I is_vertical_scroll_bar_show_requested: is_vertical_scroll_bar_show_requested unconnect_radio_grouping (a_container: EV_CONTAINER) -- Removed radio grouping of a_container from Current. -- (from EV_CONTAINER_IMP) require -- from EV_CONTAINER_I a_container /= Void unlock_update -- Ensure `is_locked` is False, thereby ensuring graphical -- updates occur as normal. The complete client area -- is refreshed to synchronize the display with the contents. -- (from EV_GRID_I) ensure -- from EV_GRID_I not_is_locked: not is_locked unmerge_radio_button_groups (other: EV_CONTAINER) -- Remove other from radio button group of Current. -- (from EV_CONTAINER_I) unset_menu -- Unset the current menu associated to the window. -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists ensure -- from WEL_COMPOSITE_WINDOW menu_unset: not has_menu update_cached_style (new_ex_style, old_ex_style: INTEGER_32) -- Update Window cache buffer for Window style. -- (from WEL_WINDOW) user_disable_sensitive -- Make object desensitive to user input. -- (from EV_SENSITIVE_I) ensure -- from EV_SENSITIVE_I is_desensitive: not user_is_sensitive user_enable_sensitive -- Make object sensitive to user input. -- (from EV_SENSITIVE_I) ensure -- from EV_SENSITIVE_I is_sensitive_if_parent_sensitive: (has_parent and then parent_is_sensitive) implies attached_interface.implementation.is_sensitive is_sensitive_if_orphaned: not has_parent implies attached_interface.implementation.is_sensitive vertical_update (inc, position: INTEGER_32) -- Update the window and the vertical scroll box with -- inc and position. -- (from WEL_COMPOSITE_WINDOW) require -- from WEL_COMPOSITE_WINDOW exists: exists scroller_not_void: scroller /= Void position_small_enough: attached scroller as l_scroller and then l_scroller.valid_maximal_vertical_position (position) position_large_enough: position >= minimal_vertical_position ensure -- from WEL_COMPOSITE_WINDOW vertical_position_set: vertical_position = position feature -- Element change disable_drawables_have_focus -- Ensure `drawables_have_focus` is set to False. -- (from EV_GRID_I) ensure -- from EV_GRID_I drawables_have_focus: not drawables_have_focus disable_redraw -- Disable redrawing of Current until next call to `enable_redraw`. -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists enable_drawables_have_focus -- Ensure `drawables_have_focus` is set to True. -- (from EV_GRID_I) ensure -- from EV_GRID_I drawables_have_focus: drawables_have_focus enable_redraw -- Ensure Current is redrawn as required. -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists extend (an_item: like cell_item) -- Ensure that structure includes an_item. -- (from EV_CELL_I) require -- from EV_CONTAINER_I v_not_void: an_item /= Void has_system_window_locked: BOOLEAN -- Is there any window locked ? -- (from WEL_WINDOW) insert (v: like cell_item) -- Assign v to `item`. -- (from EV_SINGLE_CHILD_CONTAINER_IMP) require -- from EV_SINGLE_CHILD_CONTAINER_IMP v_not_void: v /= Void no_item: cell_item = Void insert_new_column (a_index: INTEGER_32) -- Insert a new column at index a_index. -- (from EV_GRID_I) require -- from EV_GRID_I a_index_within_range: a_index > 0 and a_index <= column_count + 1 ensure -- from EV_GRID_I column_count_set: column_count = old column_count + 1 insert_new_rows (rows_to_insert, i: INTEGER_32) -- Insert rows_to_insert rows at index i. -- (from EV_GRID_I) require -- from EV_GRID_I i_within_range: i > 0 and i <= row_count + 1 rows_to_insert_positive: rows_to_insert >= 1 not_inserting_within_existing_subrow_structure: i <= row_count implies row (i).parent_row = Void ensure -- from EV_GRID_I row_count_set: row_count = old row_count + rows_to_insert insert_new_rows_parented (rows_to_insert, i: INTEGER_32; a_parent_row: EV_GRID_ROW) -- Insert rows_to_insert new rows at index i and make those rows subnodes of a_parent_row. -- (from EV_GRID_I) require -- from EV_GRID_I i_positive: i > 0 tree_enabled: is_tree_enabled rows_to_insert_positive: row_count >= 1 i_less_than_row_count: i <= row_count + 1 a_parent_row_not_void: a_parent_row /= Void i_valid_for_parent: i > a_parent_row.index and i <= a_parent_row.index + a_parent_row.subrow_count_recursive + 1 not_inserting_within_existing_subrow_structure: i < a_parent_row.index + a_parent_row.subrow_count_recursive implies row (i).parent_row = a_parent_row ensure -- from EV_GRID_I row_count_set: row_count = old row_count + rows_to_insert subrow_count_set: a_parent_row.subrow_count = old a_parent_row.subrow_count + rows_to_insert lock_window_update -- Disables drawing in the current window. A locked window cannot be moved. -- Only one window can be locked at a time. To unlock a window locked with -- `lock_window_update` , call 'unlock_window_update'. -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW has_system_window_locked move_columns (i, j, n: INTEGER_32) -- Move n columns at index i to index j. -- (from EV_GRID_I) require -- from EV_GRID_I i_valid: i > 0 and then i <= column_count j_valid: j > 0 and then j <= column_count + 1 n_valid: n > 0 and then i + n <= column_count + 1 move_not_overlapping: n > 1 implies (j <= i or else j >= i + n) ensure -- from EV_GRID_I columns_moved: (j < i implies column (j) = old column (i) and then column (j + n - 1) = old column (i + n - 1)) and (j > i + n implies column (j - n) = old column (i) and then column (j - 1) = old column (i + n - 1)) column_count_unchanged: column_count = old column_count move_rows_to_parent (i, j, n: INTEGER_32; a_parent_row: detachable EV_GRID_ROW) -- All purpose row moving routine. -- Move n rows starting at index i immediately before row at index j. -- If j = row_count + 1 the rows are moved to the very bottom of the grid. -- If `is_tree_enabled`, all rows moved that share the same tree structure depth -- as row i are reparented as a subrow of a_parent_row. -- If a_parent_row is Void then they are set as root nodes of the grid tree. -- All parent rows within the rows moved that have a tree structure depth -- greater than that of row i are left parented. -- (from EV_GRID_I) require -- from EV_GRID_I i_valid: i > 0 and then i <= row_count j_valid: j > 0 and then j <= row_count + 1 n_valid: n > 0 and then i + n <= row_count + 1 move_not_overlapping: n > 1 implies (j <= i or else j >= i + n) not_breaking_existing_subrow_structure: j = row_count + 1 or else (a_parent_row = Void and j <= row_count and i + n <= row_count and ((j = i or j = i + 1) implies row (i + n).parent_row = Void)) or else ((a_parent_row = Void and j <= row_count) implies row (j).parent_row = Void) j_valid_for_move_to_a_parent_row: a_parent_row /= Void implies ((j = i + n and then (i > a_parent_row.index and i <= a_parent_row.index + a_parent_row.subrow_count_recursive + 1)) or (j > a_parent_row.index and j <= a_parent_row.index + a_parent_row.subrow_count_recursive + 1)) not_inserting_within_existing_subrow_structure: (a_parent_row /= Void and then j <= a_parent_row.index + a_parent_row.subrow_count_recursive) implies row (j).parent_row = a_parent_row ensure -- from EV_GRID_I rows_moved: (j <= i implies row (j) = old row (i) and then row (j + n - 1) = old row (i + n - 1)) and (j > i + n implies row (j - n) = old row (i) and then row (j - 1) = old row (i + n - 1)) row_count_unchanged: row_count = old row_count pixmap_equal_to (a_pixmap: EV_PIXMAP): BOOLEAN -- Is a_pixmap equal to pixmap? -- (from EV_PIXMAPABLE_I) put (v: like cell_item) -- Replace `item` with v. -- Was declared in {EV_SINGLE_CHILD_CONTAINER_IMP} as synonym of `replace`. -- (from EV_SINGLE_CHILD_CONTAINER_IMP) remove -- Remove `item` from Current if present. -- (from EV_SINGLE_CHILD_CONTAINER_IMP) remove_background_pixmap -- Remove background pixmap. -- (from EV_CONTAINER_IMP) require -- from EV_PIXMAPABLE_I True ensure -- from EV_PIXMAPABLE_I pixmap_removed: background_pixmap = Void remove_help_context -- Remove key press action associated with EV_APPLICATION.help_key. -- (from EV_HELP_CONTEXTABLE_I) require -- from EV_HELP_CONTEXTABLE_I help_context_not_void: help_context /= Void ensure -- from EV_HELP_CONTEXTABLE_I no_help_context: internal_help_context = Void replace (v: like cell_item) -- Replace `item` with v. -- Was declared in {EV_SINGLE_CHILD_CONTAINER_IMP} as synonym of `put`. -- (from EV_SINGLE_CHILD_CONTAINER_IMP) require -- from EV_CONTAINER_I True set_background_pixmap (pix: EV_PIXMAP) -- Set the background pixmap and redraw the container. -- (from EV_CONTAINER_IMP) require -- from EV_PIXMAPABLE_I pixmap_not_void: pix /= Void set_font (a_font: WEL_FONT) -- Set `font` with a_font. -- (from WEL_CONTROL_WINDOW) require -- from WEL_CONTROL_WINDOW exists: exists a_font_not_void: a_font /= Void a_font_exists: a_font.exists ensure -- from WEL_CONTROL_WINDOW font_set: not has_system_font implies font.item = a_font.item set_help_context (an_help_context: like help_context) -- Assign a_help_context to `help_context`. -- Assign an_help_context to `help_context`. -- (from EV_HELP_CONTEXTABLE_I) require -- from EV_HELP_CONTEXTABLE_I an_help_context_not_void: an_help_context /= Void ensure -- from EV_HELP_CONTEXTABLE_I help_context_assigned: attached help_context as l_help_context and then l_help_context ~ an_help_context wel_set_item (an_item: POINTER) -- Set `item` with an_item -- (from WEL_ANY) ensure -- from WEL_ANY item_set: wel_item = an_item set_item (a_column, a_row: INTEGER_32; a_item: detachable EV_GRID_ITEM) -- Set grid item at position (a_column, a_row) to a_item. -- If a_item is Void, the current item (if any) is removed. -- (from EV_GRID_I) require -- from EV_GRID_I a_column_positive: a_column > 0 a_row_positive: a_row > 0 a_item_not_parented: a_item /= Void implies a_item.parent = Void valid_tree_structure_on_item_insertion: a_item /= Void and is_tree_enabled and then a_row <= row_count and then attached row (a_row).parent_row as l_parent_row implies a_column >= l_parent_row.index_of_first_item item_may_be_added_if_row_is_a_subrow: a_item /= Void and then a_row <= row_count and then row (a_row).is_part_of_tree_structure implies row (a_row).is_index_valid_for_item_setting_if_tree_node (a_column) item_may_be_removed_if_row_is_a_subrow: a_item = Void and then a_row <= row_count and then row (a_row).is_part_of_tree_structure implies row (a_row).is_index_valid_for_item_removal_if_tree_node (a_column) ensure -- from EV_GRID_I item_set: item (a_column, a_row) = a_item wel_set_parent (a_parent: detachable WEL_WINDOW) -- Change the parent of the current window. -- (from WEL_WINDOW) require -- from EV_WIDGET_IMP exists: exists require -- from WEL_WINDOW exists: exists set_parent_imp (par_imp: detachable EV_CONTAINER_IMP) -- Make par_imp the new parent of Current. -- par_imp can be Void then the parent is the screen. -- (from EV_CONTAINER_IMP) set_placement (a_placement: WEL_WINDOW_PLACEMENT) -- Set `placement` with a_placement -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists a_placement_not_void: a_placement /= Void a_placement_exists: a_placement.exists wel_set_text (a_text: detachable READABLE_STRING_GENERAL) -- Set the window text -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists ensure -- from WEL_WINDOW text_set_when_not_void: a_text /= Void implies wel_text.same_string_general (a_text) text_set_when_void: a_text = Void implies wel_text.count = 0 set_timer (timer_id, time_out: INTEGER_32) -- Set a timer identified by timer_id with a -- time_out value (in milliseconds). -- See also `on_timer`, `kill_timer`. -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists positive_timer_id: timer_id > 0 positive_time_out: time_out > 0 set_tooltip (a_tooltip: READABLE_STRING_GENERAL) -- Assign a_tooltip to Current. -- (from EV_GRID_I) require -- from EV_TOOLTIPABLE_I a_tooltip_not_void: a_tooltip /= Void set_top_level_window_imp (a_window: detachable EV_WINDOW_IMP) -- Make a_window the new `top_level_window_imp` -- of Current. -- (from EV_CELL_IMP) set_x (a_x: INTEGER_32) -- Set x with a_x -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists set_y (a_y: INTEGER_32) -- Set y with a_y -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists top_level_window_imp: detachable EV_WINDOW_IMP -- Top level window that contains Current. -- (from EV_CELL_IMP) unlock_window_update -- Unlock a locked window. -- (from WEL_WINDOW) require -- from WEL_WINDOW exists: exists feature -- Removal clear -- Remove all items from Current. -- (from EV_GRID_I) ensure -- from EV_GRID_I to_implement_assertion ("EV_GRID_I.clear - All items positions return `Void'.") dispose -- Free allocated memory. -- (from WEL_WINDOW) require -- from DISPOSABLE True remove_column (a_column: INTEGER_32) -- Remove column a_column. -- (from EV_GRID_I) require -- from EV_GRID_I a_column_positive: a_column > 0 a_column_less_than_column_count: a_column <= column_count ensure -- from EV_GRID_I column_count_updated: column_count = old column_count - 1 old_column_removed: (old column (a_column)).parent = Void remove_row (a_row: INTEGER_32) -- Remove row a_row and all subrows recursively. -- If row (a_row).subrow_count_recursive is greater than 0 then -- all subrows of the row are also removed from Current. -- (from EV_GRID_I) require -- from EV_GRID_I a_row_positive: a_row > 0 a_row_less_than_row_count: a_row <= row_count ensure -- from EV_GRID_I row_count_updated: row_count = old row_count - (old row (a_row).subrow_count_recursive + 1) old_row_removed: (old row (a_row)).parent = Void node_counts_correct_in_parent: attached (old row_internal (a_row).parent_row_i) as l_parent_row_i implies l_parent_row_i.node_counts_correct to_implement_assertion ("EV_GRID.remove_row%T%TAll old recursive subrows removed.") remove_rows (lower_index, upper_index: INTEGER_32) -- Remove all rows from lower_index to upper_index inclusive. -- (from EV_GRID_I) require -- from EV_GRID_I valid_lower_index: lower_index >= 1 and lower_index <= row_count valid_upper_index: upper_index >= lower_index and upper_index <= row_count ensure -- from EV_GRID_I row_count_consistent: row_count = (old row_count) - (upper_index - lower_index + 1) lower_row_removed: (old row (lower_index)).parent = Void upper_row_removed: (old row (upper_index)).parent = Void to_implement_assertion (once "middle_rows_removed from lower to upper all old rows parent = Void") wipe_out -- Remove all columns and rows from Current. -- (from EV_GRID_I