Automatic generation produced by ISE Eiffel
note description: "EiffelVision drawable. Mswindows implementation." legal: "See notice at end of class." status: "See notice at end of class." date: "$Date: 2021-02-02 22:54:50 -0900 (Tue, 02 Feb 2021) $" revision: "$Revision: 105176 $" deferred class interface EV_DRAWABLE_IMP feature -- Access arc_cosine (v: REAL_32): REAL_32 -- Trigonometric arccosine of radian v -- in the range [0, pi] -- (from SINGLE_MATH) ensure -- from SINGLE_MATH instance_free: class arc_sine (v: REAL_32): REAL_32 -- Trigonometric arcsine of radian v -- in the range [-pi/2, +pi/2] -- (from SINGLE_MATH) ensure -- from SINGLE_MATH instance_free: class arc_tangent (v: REAL_32): REAL_32 -- Trigonometric arctangent of radian v -- in the range [-pi/2, +pi/2] -- (from SINGLE_MATH) ensure -- from SINGLE_MATH instance_free: class frozen background_color: EV_COLOR -- Color displayed behind foreground features. -- (from EV_COLORIZABLE_I) background_color_internal: detachable EV_COLOR -- Color used to fill figures. Blackness: INTEGER_32 = 66 -- Declared in Windows as BLACKNESS -- (from WEL_RASTER_OPERATIONS_CONSTANTS) Bs_dibpattern: INTEGER_32 = 5 -- A pattern brush defined by a device-independent -- bitmap (DIB) specification. -- (from WEL_BRUSH_STYLE_CONSTANTS) Bs_dibpattern8x8: INTEGER_32 = 8 -- Same as `bs_dibpattern`. -- (from WEL_BRUSH_STYLE_CONSTANTS) Bs_dibpatternpt: INTEGER_32 = 6 -- A pattern brush defined by a device-independent -- bitmap (DIB) specification -- (from WEL_BRUSH_STYLE_CONSTANTS) Bs_hatched: INTEGER_32 = 2 -- Hatched brush. -- (from WEL_BRUSH_STYLE_CONSTANTS) Bs_hollow: INTEGER_32 = 1 -- Hollow brush. -- (from WEL_BRUSH_STYLE_CONSTANTS) Bs_indexed: INTEGER_32 = 4 -- (from WEL_BRUSH_STYLE_CONSTANTS) Bs_null: INTEGER_32 = 1 -- Same as `bs_hollow`. -- (from WEL_BRUSH_STYLE_CONSTANTS) Bs_pattern: INTEGER_32 = 3 -- Pattern brush defined by a memory bitmap. -- (from WEL_BRUSH_STYLE_CONSTANTS) Bs_pattern8x8: INTEGER_32 = 7 -- Same as `bs_pattern`. -- (from WEL_BRUSH_STYLE_CONSTANTS) Bs_solid: INTEGER_32 = 0 -- Solid brush. -- (from WEL_BRUSH_STYLE_CONSTANTS) ceiling (v: REAL_32): REAL_32 -- Least integral value greater than or equal to v -- (from SINGLE_MATH) ensure -- from SINGLE_MATH instance_free: class Check_instruction: INTEGER_32 = 7 -- Exception code for violated check -- (from EXCEP_CONST) Class_invariant: INTEGER_32 = 6 -- Exception code for violated class invariant -- (from EXCEP_CONST) clip_area: detachable EV_RECTANGLE -- Clip area used to clip drawing. -- If set to Void, no clipping is applied. 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) Com_exception: INTEGER_32 = 28 -- Exception code for a COM error. -- (from EXCEP_CONST) cosine (v: REAL_32): REAL_32 -- Trigonometric cosine of radian v approximated -- in the range [-pi/4, +pi/4] -- (from SINGLE_MATH) ensure -- from SINGLE_MATH instance_free: class Create_on_deferred: INTEGER_32 = 17 -- Create on deferred -- (from EXCEP_CONST) dashed_line_style: BOOLEAN -- Are lines drawn dashed? Developer_exception: INTEGER_32 = 24 -- Exception code for developer exception -- (from EXCEP_CONST) Dib_pal_colors: INTEGER_32 = 1 -- (from WEL_DIB_COLORS_CONSTANTS) Dib_rgb_colors: INTEGER_32 = 0 -- (from WEL_DIB_COLORS_CONSTANTS) Dollar_applied_to_melted_feature: INTEGER_32 = 26 -- $ applied to melted feature -- (from EXCEP_CONST) drawing_mode: INTEGER_32 -- Logical operation on pixels when drawing. Dstinvert: INTEGER_32 = 5570569 -- Declared in Windows as DSTINVERT -- (from WEL_RASTER_OPERATIONS_CONSTANTS) Dt_bottom: INTEGER_32 = 8 -- Declared in Windows as DT_BOTTOM -- (from WEL_DT_CONSTANTS) Dt_calcrect: INTEGER_32 = 1024 -- Declared in Windows as DT_CALCRECT -- (from WEL_DT_CONSTANTS) Dt_center: INTEGER_32 = 1 -- Declared in Windows as DT_CENTER -- (from WEL_DT_CONSTANTS) Dt_expandtabs: INTEGER_32 = 64 -- Declared in Windows as DT_EXPANDTABS -- (from WEL_DT_CONSTANTS) Dt_externalleading: INTEGER_32 = 512 -- Declared in Windows as DT_EXTERNALLEADING -- (from WEL_DT_CONSTANTS) Dt_hideprefix: INTEGER_32 = 1048576 -- Declared in Windows as DT_HIDEPREFIX -- (from WEL_DT_CONSTANTS) Dt_internal: INTEGER_32 = 4096 -- Declared in Windows as DT_INTERNAL -- (from WEL_DT_CONSTANTS) Dt_left: INTEGER_32 = 0 -- Declared in Windows as DT_LEFT -- (from WEL_DT_CONSTANTS) Dt_noclip: INTEGER_32 = 256 -- Declared in Windows as DT_NOCLIP -- (from WEL_DT_CONSTANTS) Dt_noprefix: INTEGER_32 = 2048 -- Declared in Windows as DT_NOPREFIX -- (from WEL_DT_CONSTANTS) Dt_right: INTEGER_32 = 2 -- Declared in Windows as DT_RIGHT -- (from WEL_DT_CONSTANTS) Dt_singleline: INTEGER_32 = 32 -- Declared in Windows as DT_SINGLELINE -- (from WEL_DT_CONSTANTS) Dt_tabstop: INTEGER_32 = 128 -- Declared in Windows as DT_TABSTOP -- (from WEL_DT_CONSTANTS) Dt_top: INTEGER_32 = 0 -- Declared in Windows as DT_TOP -- (from WEL_DT_CONSTANTS) Dt_vcenter: INTEGER_32 = 4 -- Declared in Windows as DT_VCENTER -- (from WEL_DT_CONSTANTS) Dt_word_ellipsis: INTEGER_32 = 262144 -- Declared in Windows as DT_WORD_ELLIPSIS -- (from WEL_DT_CONSTANTS) Dt_wordbreak: INTEGER_32 = 16 -- Declared in Windows as DT_WORDBREAK -- (from WEL_DT_CONSTANTS) Eiffel_runtime_fatal_error: INTEGER_32 = 25 -- Eiffel run-time fatal error -- (from EXCEP_CONST) Eiffel_runtime_panic: INTEGER_32 = 13 -- Eiffel run-time panic -- (from EXCEP_CONST) Euler: REAL_64 = 2.7182818284590452353602874713526625 -- Logarithm base -- (from MATH_CONST) Exception_in_signal_handler: INTEGER_32 = 20 -- Exception in signal handler -- (from EXCEP_CONST) Exception_manager: EXCEPTION_MANAGER -- Exception manager -- (from EXCEPTION_MANAGER_FACTORY) ensure -- from EXCEPTION_MANAGER_FACTORY instance_free: class exception_manager_not_void: Result /= Void exp (x: REAL_32): REAL_32 -- Exponential of v. -- (from SINGLE_MATH) ensure -- from SINGLE_MATH instance_free: class External_exception: INTEGER_32 = 18 -- Exception code for operating system error -- which does not set the errno variable -- (Unix-specific) -- (from EXCEP_CONST) Floating_point_exception: INTEGER_32 = 5 -- Exception code for floating point exception -- (from EXCEP_CONST) floor (v: REAL_32): REAL_32 -- Greatest integral value less than or equal to v -- (from SINGLE_MATH) ensure -- from SINGLE_MATH instance_free: class font: EV_FONT -- Font of Current. -- (from EV_FONTABLE_IMP) require -- from EV_FONTABLE_I True ensure -- from EV_FONTABLE_I 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 lines and text. generating_type: TYPE [detachable EV_DRAWABLE_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 Gwl_exstyle: INTEGER_32 = -20 -- (from WEL_GWL_CONSTANTS) Gwl_style: INTEGER_32 = -16 -- (from WEL_GWL_CONSTANTS) hs_bdiagonal: INTEGER_32 -- (from WEL_HS_CONSTANTS) hs_cross: INTEGER_32 -- (from WEL_HS_CONSTANTS) hs_diagcross: INTEGER_32 -- (from WEL_HS_CONSTANTS) hs_fdiagonal: INTEGER_32 -- (from WEL_HS_CONSTANTS) hs_horizontal: INTEGER_32 -- (from WEL_HS_CONSTANTS) hs_vertical: INTEGER_32 -- (from WEL_HS_CONSTANTS) Incorrect_inspect_value: INTEGER_32 = 9 -- Exception code for inspect value which is not one -- of the inspect constants, if there is no Else_part -- (from EXCEP_CONST) internal_font: EV_FONT -- Font of Current for internal queries. -- Faster than calling `font` as we do not need to -- create a new EV_FONT every time. -- (from EV_FONTABLE_IMP) internal_font_height: INTEGER_32 -- Height required to correctly display font of Current in pixels. -- (from EV_FONTABLE_IMP) ensure -- from EV_FONTABLE_IMP result_non_negative: Result >= 0 Io_exception: INTEGER_32 = 21 -- Exception code for I/O error -- (from EXCEP_CONST) line_width: INTEGER_32 -- Line thickness. log (v: REAL_32): REAL_32 -- Natural logarithm of v -- (from SINGLE_MATH) ensure -- from SINGLE_MATH instance_free: class log10 (v: REAL_32): REAL_32 -- Base 10 logarithm of v -- (from SINGLE_MATH) ensure -- from SINGLE_MATH instance_free: class log_2 (v: REAL_32): REAL_32 -- Base 2 logarithm of v -- (from SINGLE_MATH) ensure -- from SINGLE_MATH instance_free: class Loop_invariant: INTEGER_32 = 11 -- Exception code for violated loop invariant -- (from EXCEP_CONST) Loop_variant: INTEGER_32 = 10 -- Exception code for non-decreased loop variant -- (from EXCEP_CONST) frozen maskcopy: INTEGER_32 -- Use SRCCOPY for foreground and R2_NOOP for background. -- (from WEL_RASTER_OPERATIONS_CONSTANTS) ensure -- from WEL_RASTER_OPERATIONS_CONSTANTS is_class: class Maskpaint: INTEGER_32 = 2229030 -- 0x220326 -- (from WEL_RASTER_OPERATIONS_CONSTANTS) 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) 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) Mergecopy: INTEGER_32 = 12583114 -- Declared in Windows as MERGECOPY -- (from WEL_RASTER_OPERATIONS_CONSTANTS) Mergepaint: INTEGER_32 = 12255782 -- Declared in Windows as MERGEPAINT -- (from WEL_RASTER_OPERATIONS_CONSTANTS) No_more_memory: INTEGER_32 = 2 -- Exception code for failed memory allocation -- (from EXCEP_CONST) Notsrccopy: INTEGER_32 = 3342344 -- Declared in Windows as NOTSRCCOPY -- (from WEL_RASTER_OPERATIONS_CONSTANTS) Notsrcerase: INTEGER_32 = 1114278 -- Declared in Windows as NOTSRCERASE -- (from WEL_RASTER_OPERATIONS_CONSTANTS) Number_of_codes: INTEGER_32 = 31 -- How many codes are there to represent exceptions? -- (from EXCEP_CONST) Old_exception: INTEGER_32 = 30 -- Old exception code. -- (from EXCEP_CONST) Operating_system_exception: INTEGER_32 = 22 -- Exception code for operating system error -- which sets the errno variable -- (Unix-specific) -- (from EXCEP_CONST) Out_of_memory: INTEGER_32 = 15 -- Out of memory (cannot be ignored) -- (from EXCEP_CONST) Patcopy: INTEGER_32 = 15728673 -- Declared in Windows as PATCOPY -- (from WEL_RASTER_OPERATIONS_CONSTANTS) Patinvert: INTEGER_32 = 5898313 -- Declared in Windows as PATINVERT -- (from WEL_RASTER_OPERATIONS_CONSTANTS) Patpaint: INTEGER_32 = 16452105 -- Declared in Windows as PATPAINT -- (from WEL_RASTER_OPERATIONS_CONSTANTS) Pi: REAL_64 = 3.1415926535897932384626433832795029 -- (from MATH_CONST) Pi_2: REAL_64 = 1.5707963267948966192313216916397514 -- (from MATH_CONST) Pi_4: REAL_64 = 0.7853981633974483096156608458198757 -- (from MATH_CONST) Postcondition: INTEGER_32 = 4 -- Exception code for violated postcondition -- (from EXCEP_CONST) Precondition: INTEGER_32 = 3 -- Exception code for violated precondition -- (from EXCEP_CONST) R2_black: INTEGER_32 = 1 -- (from WEL_ROP2_CONSTANTS) R2_copypen: INTEGER_32 = 13 -- (from WEL_ROP2_CONSTANTS) R2_masknotpen: INTEGER_32 = 3 -- (from WEL_ROP2_CONSTANTS) R2_maskpen: INTEGER_32 = 9 -- (from WEL_ROP2_CONSTANTS) R2_maskpennot: INTEGER_32 = 5 -- (from WEL_ROP2_CONSTANTS) R2_mergenotpen: INTEGER_32 = 12 -- (from WEL_ROP2_CONSTANTS) R2_mergepen: INTEGER_32 = 15 -- (from WEL_ROP2_CONSTANTS) R2_mergepennot: INTEGER_32 = 14 -- (from WEL_ROP2_CONSTANTS) R2_nop: INTEGER_32 = 11 -- (from WEL_ROP2_CONSTANTS) R2_not: INTEGER_32 = 6 -- (from WEL_ROP2_CONSTANTS) R2_notcopypen: INTEGER_32 = 4 -- (from WEL_ROP2_CONSTANTS) R2_notmaskpen: INTEGER_32 = 8 -- (from WEL_ROP2_CONSTANTS) R2_notmergepen: INTEGER_32 = 2 -- (from WEL_ROP2_CONSTANTS) R2_notxorpen: INTEGER_32 = 10 -- (from WEL_ROP2_CONSTANTS) R2_white: INTEGER_32 = 16 -- (from WEL_ROP2_CONSTANTS) R2_xorpen: INTEGER_32 = 7 -- (from WEL_ROP2_CONSTANTS) rabs (v: REAL_32): REAL_32 -- Absolute value of v -- (from SINGLE_MATH) ensure -- from SINGLE_MATH instance_free: class Rescue_exception: INTEGER_32 = 14 -- Exception code for exception in rescue clause -- (from EXCEP_CONST) Resumption_failed: INTEGER_32 = 16 -- Resumption failed (retry did not succeed) -- (from EXCEP_CONST) Retrieve_exception: INTEGER_32 = 23 -- Exception code for retrieval error -- may be raised by retrieved in IO_MEDIUM. -- (from EXCEP_CONST) Routine_failure: INTEGER_32 = 8 -- Exception code for failed routine -- (from EXCEP_CONST) Runtime_check_exception: INTEGER_32 = 29 -- Exception code for runtime check being violated. -- (from EXCEP_CONST) Runtime_io_exception: INTEGER_32 = 27 -- Exception code for I/O error raised by runtime functions -- such as store/retrieve, file access... -- (from EXCEP_CONST) Serialization_exception: INTEGER_32 = 31 -- Serialization exception code. -- (from EXCEP_CONST) Signal_exception: INTEGER_32 = 12 -- Exception code for operating system signal -- (from EXCEP_CONST) sine (v: REAL_32): REAL_32 -- Trigonometric sine of radian v approximated -- in range [-pi/4, +pi/4] -- (from SINGLE_MATH) ensure -- from SINGLE_MATH instance_free: class sqrt (v: REAL_32): REAL_32 -- Square root of v -- (from SINGLE_MATH) ensure -- from SINGLE_MATH instance_free: class Sqrt2: REAL_64 = 1.4142135623730950488016887242096981 -- Square root of 2 -- (from MATH_CONST) Srcand: INTEGER_32 = 8913094 -- Declared in Windows as SRCAND -- (from WEL_RASTER_OPERATIONS_CONSTANTS) Srccopy: INTEGER_32 = 13369376 -- Declared in Windows as SRCCOPY -- (from WEL_RASTER_OPERATIONS_CONSTANTS) Srcerase: INTEGER_32 = 4457256 -- Declared in Windows as SRCERASE -- (from WEL_RASTER_OPERATIONS_CONSTANTS) Srcinvert: INTEGER_32 = 6684742 -- Declared in Windows as SRCINVERT -- (from WEL_RASTER_OPERATIONS_CONSTANTS) Srcpaint: INTEGER_32 = 15597702 -- Declared in Windows as SRCPAINT -- (from WEL_RASTER_OPERATIONS_CONSTANTS) sub_pixmap (area: EV_RECTANGLE): EV_PIXMAP -- Return the subpixmap of Current described by rectangle area. require -- from EV_DRAWABLE_I area_not_void: area /= Void ensure -- from EV_DRAWABLE_I result_not_void: Result /= Void ta_baseline: INTEGER_32 -- The reference point is on the base line of the text. -- (from WEL_TA_CONSTANTS) ta_bottom: INTEGER_32 -- The reference point is on the bottom edge of the bounding rectangle. -- (from WEL_TA_CONSTANTS) ta_center: INTEGER_32 -- The reference point is aligned horizontally with the center of the bounding rectangle. -- (from WEL_TA_CONSTANTS) ta_left: INTEGER_32 -- The reference point is on the left edge of the bounding rectangle. -- (from WEL_TA_CONSTANTS) ta_noupdatecp: INTEGER_32 -- The current position is not updated after each text output call. -- (from WEL_TA_CONSTANTS) ta_right: INTEGER_32 -- The reference point is on the right edge of the bounding rectangle. -- (from WEL_TA_CONSTANTS) ta_top: INTEGER_32 -- The reference point is on the top edge of the bounding rectangle. -- (from WEL_TA_CONSTANTS) ta_updatecp: INTEGER_32 -- The current position is updated after each text output call. -- (from WEL_TA_CONSTANTS) tangent (v: REAL_32): REAL_32 -- Trigonometric tangent of radian v approximated -- in range [-pi/4, +pi/4] -- (from SINGLE_MATH) ensure -- from SINGLE_MATH instance_free: class tile: detachable EV_PIXMAP -- Pixmap that is used to instead of background_color. -- If set to Void, `background_color` is used to fill. valid_code (c: INTEGER_32): BOOLEAN -- Is c a valid code to represent some kind of exceptions? -- (from EXCEP_CONST) Void_assigned_to_expanded: INTEGER_32 = 19 -- Exception code for assignment of void value -- to expanded entity -- (from EXCEP_CONST) Void_call_target: INTEGER_32 = 1 -- Exception code for feature applied to void reference -- (from EXCEP_CONST) 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) Whiteness: INTEGER_32 = 16711778 -- Declared in Windows as WHITENESS -- (from WEL_RASTER_OPERATIONS_CONSTANTS) feature -- Measurement height: INTEGER_32 -- Height of the widget ensure -- from EV_DRAWABLE_I positive: Result > 0 width: INTEGER_32 -- Width of the widget. ensure -- from EV_DRAWABLE_I positive: Result > 0 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_DRAWABLE_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_DRAWABLE_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_DRAWABLE_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 assertion_violation: BOOLEAN -- Is last exception originally due to a violated -- assertion or non-decreasing variant? -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class exception_class_name: detachable STRING_8 -- Name of the class that includes the recipient -- of original form of last exception -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class 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 developer_exception_name: detachable STRING_8 -- Name of last developer-raised exception -- (from EXCEPTIONS) require -- from EXCEPTIONS applicable: is_developer_exception ensure -- from EXCEPTIONS instance_free: class exception: INTEGER_32 -- Code of last exception that occurred -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class exception_trace: detachable STRING_8 -- String representation of the exception trace -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class foreground_window: detachable WEL_WINDOW -- Foreground window (window with focus) -- (from WEL_WINDOWS_ROUTINES) is_destroyed: BOOLEAN -- Is Current no longer usable? -- (from EV_ANY_I) is_developer_exception: BOOLEAN -- Is the last exception originally due to -- a developer exception? -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class is_developer_exception_of_name (name: detachable STRING_8): BOOLEAN -- Is the last exception originally due to a developer -- exception of name name? -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class is_signal: BOOLEAN -- Is last exception originally due to an external -- event (operating system signal)? -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class is_system_exception: BOOLEAN -- Is last exception originally due to an -- external event (operating system error)? -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class 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_window (hwnd: POINTER): BOOLEAN -- Does hwnd point to a valid Window? -- (from WEL_WINDOWS_ROUTINES) 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) meaning (except: INTEGER_32): detachable STRING_8 -- A message in English describing what except is -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class original_class_name: detachable STRING_8 -- Name of the class that includes the recipient -- of original form of last exception -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class original_exception: INTEGER_32 -- Original code of last exception that triggered -- current exception -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class original_recipient_name: detachable STRING_8 -- Name of the routine whose execution was -- interrupted by original form of last exception -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class original_tag_name: detachable STRING_8 -- Assertion tag for original form of last -- assertion violation. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class recipient_name: detachable STRING_8 -- Name of the routine whose execution was -- interrupted by last exception -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class 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)) system_directory: STRING_32 -- Path of the Windows system directory -- (from WEL_WINDOWS_ROUTINES) ensure -- from WEL_WINDOWS_ROUTINES result_not_void: Result /= Void tag_name: detachable STRING_8 -- Tag of last violated assertion clause -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class 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 valid_color_constant (c: INTEGER_32): BOOLEAN -- Is c a valid color constant? -- (from WEL_COLOR_CONSTANTS) valid_dib_colors_constant (c: INTEGER_32): BOOLEAN -- Is c a valid dib colors constant? -- (from WEL_DIB_COLORS_CONSTANTS) valid_htext_alignment_constant (c: INTEGER_32): BOOLEAN -- Is c a valid text alignment constant for horizontal positioning? -- (from WEL_TA_CONSTANTS) valid_rop2_constant (c: INTEGER_32): BOOLEAN -- Is c a valid rop2 constant? -- (from WEL_ROP2_CONSTANTS) valid_text_alignment_constant (c: INTEGER_32): BOOLEAN -- Is c a valid text alignment constant? -- (from WEL_TA_CONSTANTS) valid_vtext_alignment_constant (c: INTEGER_32): BOOLEAN -- Is c a valid text alignment constant for vertical positioning? -- (from WEL_TA_CONSTANTS) 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 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 catch (code: INTEGER_32) -- Make sure that any exception of code code will be -- caught. This is the default. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class die (code: INTEGER_32) -- Terminate execution with exit status code, -- without triggering an exception. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS False instance_free: class ignore (code: INTEGER_32) -- Make sure that any exception of code code will be -- ignored. This is not the default. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class message_on_failure -- Print an exception history table -- in case of failure. -- This is the default. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class no_message_on_failure -- Do not print an exception history table -- in case of failure. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class exception_raise (name: detachable READABLE_STRING_GENERAL) -- Raise a developer exception of name name. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class raise_retrieval_exception (name: detachable READABLE_STRING_GENERAL) -- Raise a retrieval exception of name name. -- (from EXCEPTIONS) ensure -- from EXCEPTIONS instance_free: class set_default_colors -- Set foreground and background color to their default values. -- (from EV_COLORIZABLE_I) set_default_font -- Make system to use default font. -- (from EV_FONTABLE_IMP) feature -- Element change disable_dashed_line_style -- Draw lines solid. ensure -- from EV_DRAWABLE_I dashed_line_style_disabled: is_usable implies not attached_interface.dashed_line_style enable_dashed_line_style -- Draw lines dashed. ensure -- from EV_DRAWABLE_I dashed_line_style_enabled: is_usable implies attached_interface.dashed_line_style remove_clipping -- Do not apply any clipping. ensure -- from EV_DRAWABLE_I clip_area_void: is_usable implies attached_interface.clip_area = Void remove_tile -- Do not apply a tile when filling. ensure -- from EV_DRAWABLE_I tile_void: is_usable implies attached_interface.tile = Void set_background_color (a_color: EV_COLOR) -- Assign a_color to `background_color`. require -- from EV_COLORIZABLE_I a_color_not_void: a_color /= Void ensure -- from EV_COLORIZABLE_I background_color_assigned: is_initialized implies background_color.is_equal (a_color) set_clip_area (an_area: EV_RECTANGLE) -- Set an area to clip to. -- Set to Void when no clipping should be applied. require -- from EV_DRAWABLE_I an_area_not_void: an_area /= Void ensure -- from EV_DRAWABLE_I clip_area_assigned: is_usable implies attached attached_interface.clip_area as l_clip_area and then an_area.is_equal (l_clip_area) set_clip_region (a_region: EV_REGION) -- Set an area to clip to. -- Set to Void when no clipping should be applied. require -- from EV_DRAWABLE_I a_region_not_void: a_region /= Void set_drawing_mode (a_mode: INTEGER_32) -- Set drawing mode to a_mode. require -- from EV_DRAWABLE_I a_mode_valid: valid_drawing_mode (a_mode) ensure -- from EV_DRAWABLE_I drawing_mode_assigned: is_usable implies attached_interface.drawing_mode = a_mode set_font (a_font: EV_FONT) -- Set `font` to a_font. require -- from EV_FONTABLE_I a_font_not_void: a_font /= Void ensure -- from EV_FONTABLE_I assigned: is_usable implies font.is_equal (a_font) set_foreground_color (a_color: EV_COLOR) -- Assign a_color to `foreground_color` require -- from EV_COLORIZABLE_I a_color_not_void: a_color /= Void ensure -- from EV_COLORIZABLE_I foreground_color_assigned: is_initialized implies foreground_color.is_equal (a_color) set_line_width (a_width: INTEGER_32) -- Assign a_width to `line_width`. require -- from EV_DRAWABLE_I a_width_positive_or_zero: a_width >= 0 ensure -- from EV_DRAWABLE_I line_width_assigned: is_usable implies attached_interface.line_width = a_width set_tile (a_pixmap: EV_PIXMAP) -- Set tile used to fill figures. -- Set to Void to use `background_color` to fill. require -- from EV_DRAWABLE_I a_pixmap_not_void: a_pixmap /= Void ensure -- from EV_DRAWABLE_I tile_assigned: is_usable implies attached_interface.tile /= Void feature -- Duplication copy (other: EV_DRAWABLE_IMP) -- Update current object using fields of object attached -- to other, so as to yield equal objects. -- (from ANY) require -- from ANY other_not_void: other /= Void type_identity: same_type (other) ensure -- from ANY is_equal: Current ~ other frozen deep_copy (other: EV_DRAWABLE_IMP) -- Effect equivalent to that of: -- `copy` (other . `deep_twin`) -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY deep_equal: deep_equal (Current, other) frozen deep_twin: EV_DRAWABLE_IMP -- New object structure recursively duplicated from Current. -- (from ANY) ensure -- from ANY deep_twin_not_void: Result /= Void deep_equal: deep_equal (Current, Result) frozen standard_copy (other: EV_DRAWABLE_IMP) -- Copy every field of other onto corresponding field -- of current object. -- (from ANY) require -- from ANY other_not_void: other /= Void type_identity: same_type (other) ensure -- from ANY is_standard_equal: standard_is_equal (other) frozen standard_twin: EV_DRAWABLE_IMP -- New object field-by-field identical to other. -- Always uses default copying semantics. -- (from ANY) ensure -- from ANY standard_twin_not_void: Result /= Void equal: standard_equal (Result, Current) frozen twin: EV_DRAWABLE_IMP -- New object equal to Current -- `twin` calls `copy`; to change copying/twinning semantics, redefine `copy`. -- (from ANY) ensure -- from ANY twin_not_void: Result /= Void is_equal: Result ~ Current feature -- Basic operations cwin_hi_word (value: POINTER): INTEGER_32 -- SDK HIWORD -- (from WEL_WORD_OPERATIONS) cwin_lo_word (value: POINTER): INTEGER_32 -- SDK LOWORD -- (from WEL_WORD_OPERATIONS) cwin_make_long (low, high: INTEGER_32): POINTER -- SDK MAKELONG -- (from WEL_WORD_OPERATIONS) cwin_make_lparam (low, high: INTEGER_32): POINTER -- SKD MAKELPARAM -- (from WEL_WORD_OPERATIONS) frozen default: detachable EV_DRAWABLE_IMP -- Default value of object's type -- (from ANY) frozen default_pointer: POINTER -- Default value of type POINTER -- (Avoid the need to write p.`default` for -- some p of type POINTER.) -- (from ANY) ensure -- from ANY instance_free: class default_rescue -- Process exception for routines with no Rescue clause. -- (Default: do nothing.) -- (from ANY) frozen do_nothing -- Execute a null action. -- (from ANY) ensure -- from ANY instance_free: class eif_current_object_id: INTEGER_32 -- New identifier for Current -- (from IDENTIFIED_ROUTINES) ensure -- from IDENTIFIED_ROUTINES eif_current_object_id: Result > 0 inserted: eif_is_object_id_of_current (Result) eif_id_any_object (an_id: INTEGER_32): detachable ANY -- Object associated with an_id -- (from IDENTIFIED_ROUTINES) require -- from IDENTIFIED_ROUTINES an_id_non_negative: an_id >= 0 ensure -- from IDENTIFIED_ROUTINES instance_free: class eif_is_object_id_of_current (an_id: INTEGER_32): BOOLEAN -- Is an_id the associated object ID of Current. -- (from IDENTIFIED_ROUTINES) require -- from IDENTIFIED_ROUTINES an_id_non_negative: an_id >= 0 eif_object_id (an_object: ANY): INTEGER_32 -- New identifier for an_object -- (from IDENTIFIED_ROUTINES) ensure -- from IDENTIFIED_ROUTINES instance_free: class eif_object_id_positive: Result > 0 inserted: eif_id_any_object (Result) = an_object eif_object_id_free (an_id: INTEGER_32) -- Free the entry an_id -- (from IDENTIFIED_ROUTINES) require -- from IDENTIFIED_ROUTINES an_id_non_negative: an_id >= 0 ensure -- from IDENTIFIED_ROUTINES instance_free: class removed: eif_id_any_object (an_id) = Void hide_cursor -- Hide the cursor. -- (from WEL_WINDOWS_ROUTINES) message_beep_asterisk -- Play the system asterisk waveform sound. -- (from WEL_WINDOWS_ROUTINES) message_beep_exclamation -- Play the system exclamation waveform sound. -- (from WEL_WINDOWS_ROUTINES) message_beep_hand -- Play the system hand waveform sound. -- (from WEL_WINDOWS_ROUTINES) message_beep_ok -- Play the system ok waveform sound. -- (from WEL_WINDOWS_ROUTINES) message_beep_question -- Play the system question waveform sound. -- (from WEL_WINDOWS_ROUTINES) output_debug_string (s: READABLE_STRING_GENERAL) -- Send a string s to the system debugger. -- (from WEL_WINDOWS_ROUTINES) require -- from WEL_WINDOWS_ROUTINES s_not_void: s /= Void resource_string_id (an_id: INTEGER_32): STRING_32 -- String identified by an_id in the resource file. -- (from WEL_WINDOWS_ROUTINES) ensure -- from WEL_WINDOWS_ROUTINES result_not_void: Result /= Void set_cursor_position_absolute (x, y: INTEGER_32) -- Set the cursor position to x, y. -- (from WEL_WINDOWS_ROUTINES) show_cursor -- Show the cursor. -- (from WEL_WINDOWS_ROUTINES) feature Allocated_brushes: EV_GDI_ALLOCATED_BRUSHES -- (from EV_SHARED_GDI_OBJECTS) Allocated_pens: EV_GDI_ALLOCATED_PENS -- (from EV_SHARED_GDI_OBJECTS) feature -- Access (Basic style constants) Ps_dash: INTEGER_32 = 1 -- (from WEL_PS_CONSTANTS) Ps_dashdot: INTEGER_32 = 3 -- (from WEL_PS_CONSTANTS) Ps_dashdotdot: INTEGER_32 = 4 -- (from WEL_PS_CONSTANTS) Ps_dot: INTEGER_32 = 2 -- (from WEL_PS_CONSTANTS) Ps_insideframe: INTEGER_32 = 6 -- Mutually exclusive pen style constants. -- (from WEL_PS_CONSTANTS) Ps_null: INTEGER_32 = 5 -- (from WEL_PS_CONSTANTS) Ps_solid: INTEGER_32 = 0 -- (from WEL_PS_CONSTANTS) feature -- Access (Extended Style constants for use in conjunction with {WEL_PEN}.make_from_brush) Ps_alternate: INTEGER_32 = 8 -- Mutually exclusive pen style constants. -- (from WEL_PS_CONSTANTS) Ps_cosmetic: INTEGER_32 = 0 -- (from WEL_PS_CONSTANTS) Ps_endcap_flat: INTEGER_32 = 512 -- Ps_geometric style constants. -- (from WEL_PS_CONSTANTS) Ps_endcap_round: INTEGER_32 = 0 -- (from WEL_PS_CONSTANTS) Ps_endcap_square: INTEGER_32 = 256 -- (from WEL_PS_CONSTANTS) Ps_geometric: INTEGER_32 = 65536 -- Brush type style constants -- (from WEL_PS_CONSTANTS) Ps_join_bevel: INTEGER_32 = 4096 -- (from WEL_PS_CONSTANTS) Ps_join_miter: INTEGER_32 = 8192 -- (from WEL_PS_CONSTANTS) Ps_join_round: INTEGER_32 = 0 -- (from WEL_PS_CONSTANTS) Ps_userstyle: INTEGER_32 = 7 -- (from WEL_PS_CONSTANTS) feature -- Clearing and drawing operations clear -- Erase Current with `background_color`. clear_rectangle (x1, y1, a_width, a_height: INTEGER_32) -- Draw rectangle with upper-left corner on (x, y) -- with size a_width and a_height in `background_color`. redraw -- Force Current to redraw itself. -- (from EV_DRAWABLE_I) feature -- Constants Drawing_mode_and: INTEGER_32 = 3 -- Drawing mode where bitwise AND is performed when a -- pixel is drawn. -- -- T\S | 0 | 1 | -- ------------- -- 0 | 0 | 0 | -- ------------- -- 1 | 0 | 1 | -- (from EV_DRAWABLE_CONSTANTS) Drawing_mode_copy: INTEGER_32 = 0 -- Normal drawing mode. -- -- T\S | 0 | 1 | -- ------------- -- 0 | 0 | 1 | -- ------------- -- 1 | 0 | 1 | -- (from EV_DRAWABLE_CONSTANTS) Drawing_mode_invert: INTEGER_32 = 2 -- Drawing mode where bits are inverted before drawn. -- -- T\S | 0 | 1 | -- ------------- -- 0 | 1 | 0 | -- ------------- -- 1 | 1 | 0 | -- (from EV_DRAWABLE_CONSTANTS) Drawing_mode_or: INTEGER_32 = 4 -- Drawing mode where bitwise OR is performed when a -- pixel is drawn. -- -- T\S | 0 | 1 | -- ------------- -- 0 | 0 | 1 | -- ------------- -- 1 | 1 | 1 | -- (from EV_DRAWABLE_CONSTANTS) Drawing_mode_xor: INTEGER_32 = 1 -- Drawing mode where bitwise XOR is performed when a -- pixel is drawn. -- -- T\S | 0 | 1 | -- ------------- -- 0 | 0 | 1 | -- ------------- -- 1 | 1 | 0 | -- (from EV_DRAWABLE_CONSTANTS) feature -- Contract Support valid_extended_pen_style (c: INTEGER_32): BOOLEAN -- Is c a valid style constant when used in conjunction with a WEL_LOG_BRUSH. -- (from WEL_PS_CONSTANTS) valid_pen_style_constant (c: INTEGER_32): BOOLEAN -- Is c a valid pen style constant? -- Only valid for non-extended pen creation. -- (from WEL_PS_CONSTANTS) feature -- Contract support valid_drawing_mode (a_mode: INTEGER_32): BOOLEAN -- Is a_mode a valid drawing mode? -- (from EV_DRAWABLE_CONSTANTS) feature -- Conversion from Eiffel to Windows frozen to_lparam (i: INTEGER_32): POINTER -- Convert integer value i in a valid LPARAM value. -- (from WEL_DATA_TYPE) ensure -- from WEL_DATA_TYPE is_class: class frozen to_lresult (i: INTEGER_32): POINTER -- Convert integer value i in a valid LRESULT value. -- (from WEL_DATA_TYPE) ensure -- from WEL_DATA_TYPE is_class: class frozen to_wparam (i: INTEGER_32): POINTER -- Convert integer value i in a valid WPARAM value. -- (from WEL_DATA_TYPE) ensure -- from WEL_DATA_TYPE is_class: class feature -- Drawing mode is_anti_aliasing_enabled: BOOLEAN -- Should anti-aliasing be used when drawing? -- See also: `set_anti_aliasing`. set_anti_aliasing (value: BOOLEAN) -- Enable (if value) or disable (if not value) anti-aliasing (if supported) when drawing. -- Set `is_anti_aliasing_enabled` to value. require -- from EV_DRAWABLE_I True ensure then is_anti_aliasing_enabled = value feature -- Drawing operations Bounding_area: EV_RECTANGLE -- Temporary rectangle used internally. draw_arc (x, y: INTEGER_32; a_bounding_width, a_bounding_height: INTEGER_32; a_start_angle, an_aperture: REAL_32) -- Draw part of an ellipse defined by a rectangular area with an -- upper left corner at x,y, width a_bounding_width and height -- a_bounding_height. -- Start at a_start_angle and stop at a_start_angle + an_aperture. -- Angles are measured in radians, and go -- counterclockwise from the 3 o'clock angle. require -- from EV_DRAWABLE_I a_bounding_width_positive_or_zero: a_bounding_width >= 0 a_bounding_width_positive_or_zero: a_bounding_height >= 0 draw_ellipse (x, y, a_bounding_width, a_bounding_height: INTEGER_32) -- Draw an ellipse defined by a rectangular area with an -- upper left corner at x,y, width a_bounding_width and height -- a_bounding_height. require -- from EV_DRAWABLE_I a_bounding_width_positive_or_zero: a_bounding_width >= 0 a_bounding_height_positive_or_zero: a_bounding_height >= 0 draw_ellipsed_text (x, y: INTEGER_32; a_text: READABLE_STRING_GENERAL; clipping_width: INTEGER_32) -- Draw a_text with left of baseline at (x, y) using `font`. -- Text is clipped to clipping_width in pixels and ellipses are displayed -- to show truncated characters if any. require -- from EV_DRAWABLE_I a_text_not_void: a_text /= Void clipping_width_positive: clipping_width >= 0 draw_ellipsed_text_top_left (x, y: INTEGER_32; a_text: READABLE_STRING_GENERAL; clipping_width: INTEGER_32) -- Draw a_text with top left corner at (x, y) using `font`. -- Text is clipped to clipping_width in pixels and ellipses are displayed -- to show truncated characters if any. require -- from EV_DRAWABLE_I a_text_not_void: a_text /= Void clipping_width_positive: clipping_width >= 0 draw_pie_slice (x, y: INTEGER_32; a_bounding_width, a_bounding_height: INTEGER_32; a_start_angle, an_aperture: REAL_32) -- Draw part of an ellipse defined by a rectangular area with an -- upper left corner at x,y, width a_bounding_width and height -- a_bounding_height. -- Start at a_start_angle and stop at a_start_angle + an_aperture. -- The arc is then closed by two segments through (x, 'y'). -- Angles are measured in radians, start at the -- 3 o'clock angle and grow counterclockwise. require -- from EV_DRAWABLE_I a_bounding_width_positive_or_zero: a_bounding_width >= 0 a_bounding_height_positive_or_zero: a_bounding_height >= 0 draw_pixmap (x, y: INTEGER_32; a_pixmap: EV_PIXMAP) -- Draw a_pixmap with upper-left corner on (x, y). require -- from EV_DRAWABLE_I a_pixmap_not_void: a_pixmap /= Void draw_point (x, y: INTEGER_32) -- Draw point at (x, y). draw_polyline (points: ARRAY [EV_COORDINATE]; is_closed: BOOLEAN) -- Draw line segments between subsequent points in -- points. If is_closed draw line segment between first -- and last point in points. require -- from EV_DRAWABLE_I points_not_void: points /= Void draw_rectangle (x, y, a_width, a_height: INTEGER_32) -- Draw rectangle with upper-left corner on (x, y) -- with size a_width and a_height. require -- from EV_DRAWABLE_I a_width_positive_or_zero: a_width >= 0 a_height_positive_or_zero: a_height >= 0 draw_rotated_text (x, y: INTEGER_32; a_angle: REAL_32; a_text: READABLE_STRING_GENERAL) -- Draw rotated text a_text with left of baseline at (x, y) using `font`. -- Rotation is number of radians counter-clockwise from horizontal plane. require -- from EV_DRAWABLE_I a_text_not_void: a_text /= Void draw_segment (x1, y1, x2, y2: INTEGER_32) -- Draw line segment from (x1, 'y1') to (x2, 'y2'). draw_straight_line (x1, y1, x2, y2: INTEGER_32) -- Draw infinite straight line through (x1,'y1') and (x2,'y2'). -- (from EV_DRAWABLE_I) draw_sub_pixel_buffer (x, y: INTEGER_32; a_pixel_buffer: EV_PIXEL_BUFFER; area: EV_RECTANGLE) -- Draw area of a_pixel_buffer with upper-left corner on (x, y). require -- from EV_DRAWABLE_I a_pixel_buffer_not_void: a_pixel_buffer /= Void a_pixel_buffer_not_destroyed: not a_pixel_buffer.is_destroyed area_not_void: area /= Void draw_sub_pixmap (x, y: INTEGER_32; a_pixmap: EV_PIXMAP; area: EV_RECTANGLE) -- Draw area of a_pixmap with upper-left corner on (x, y). require -- from EV_DRAWABLE_I a_pixmap_not_void: a_pixmap /= Void a_pixmap_not_destroyed: not a_pixmap.is_destroyed area_not_void: area /= Void draw_text (x, y: INTEGER_32; a_text: READABLE_STRING_GENERAL) -- Draw a_text with left of baseline at (x, y) using `font`. require -- from EV_DRAWABLE_I a_text_not_void: a_text /= Void draw_text_top_left (x, y: INTEGER_32; a_text: READABLE_STRING_GENERAL) -- Draw a_text with top left corner at (x, y) using `font`. require -- from EV_DRAWABLE_I a_text_not_void: a_text /= Void internal_draw_text (x, y: INTEGER_32; angle: REAL_32; clipping_width: INTEGER_32; from_baseline: BOOLEAN; a_text: READABLE_STRING_GENERAL) -- Draw a_text with top left corner at (x, y) using `font`. -- Text is clipped to clipping_width in pixels and ellipses are displayed -- to show truncated characters if any. -- Text is rotated counter-clockwise from the horizontal axis degrees degrees. feature -- Filling operations fill_ellipse (x, y, a_bounding_width, a_bounding_height: INTEGER_32) -- Fill an ellipse defined by a rectangular area with an -- upper left corner at x,y, width a_bounding_width and height -- a_bounding_height. require -- from EV_DRAWABLE_I a_bounding_width_positive_or_zero: a_bounding_width >= 0 a_bounding_height_positive_or_zero: a_bounding_height >= 0 fill_pie_slice (x, y: INTEGER_32; a_bounding_width, a_bounding_height: INTEGER_32; a_start_angle, an_aperture: REAL_32) -- Fill part of an ellipse defined by a rectangular area with an -- upper left corner at x,y, width a_bounding_width and height -- a_bounding_height. -- Start at a_start_angle and stop at a_start_angle + an_aperture. -- The arc is then closed by two segments through (x, 'y'). -- Angles are measured in radians, start at the 3 -- o'clock angle and grow counterclockwise. require -- from EV_DRAWABLE_I a_bounding_width_positive_or_zero: a_bounding_width >= 0 a_bounding_height_positive_or_zero: a_bounding_height >= 0 fill_polygon (points: ARRAY [EV_COORDINATE]) -- Draw line segments between subsequent points in points. -- Fill all enclosed area's with `foreground_color`. require -- from EV_DRAWABLE_I points_not_void: points /= Void fill_rectangle (x, y, a_width, a_height: INTEGER_32) -- Draw rectangle with upper-left corner on (x, y) -- with size a_width and a_height. Fill with `foreground_color`. require -- from EV_DRAWABLE_I a_width_positive_or_zero: a_width >= 0 a_height_positive_or_zero: a_height >= 0 feature -- For dialogs frozen dwlp_dlgproc: INTEGER_32 -- (from WEL_GWL_CONSTANTS) frozen dwlp_msgresult: INTEGER_32 -- (from WEL_GWL_CONSTANTS) frozen dwlp_user: INTEGER_32 -- (from WEL_GWL_CONSTANTS) feature -- For windows Gwl_hinstance: INTEGER_32 = -6 -- Was declared in {WEL_GWL_CONSTANTS} as synonym of `gwlp_hinstance`. -- (from WEL_GWL_CONSTANTS) Gwl_hwndparent: INTEGER_32 = -8 -- Was declared in {WEL_GWL_CONSTANTS} as synonym of `gwlp_hwndparent`. -- (from WEL_GWL_CONSTANTS) Gwl_id: INTEGER_32 = -12 -- Was declared in {WEL_GWL_CONSTANTS} as synonym of `gwlp_id`. -- (from WEL_GWL_CONSTANTS) Gwl_userdata: INTEGER_32 = -21 -- Was declared in {WEL_GWL_CONSTANTS} as synonym of `gwlp_userdata`. -- (from WEL_GWL_CONSTANTS) Gwl_wndproc: INTEGER_32 = -4 -- Was declared in {WEL_GWL_CONSTANTS} as synonym of `gwlp_wndproc`. -- (from WEL_GWL_CONSTANTS) Gwlp_hinstance: INTEGER_32 = -6 -- Was declared in {WEL_GWL_CONSTANTS} as synonym of `gwl_hinstance`. -- (from WEL_GWL_CONSTANTS) Gwlp_hwndparent: INTEGER_32 = -8 -- Was declared in {WEL_GWL_CONSTANTS} as synonym of `gwl_hwndparent`. -- (from WEL_GWL_CONSTANTS) Gwlp_id: INTEGER_32 = -12 -- Was declared in {WEL_GWL_CONSTANTS} as synonym of `gwl_id`. -- (from WEL_GWL_CONSTANTS) Gwlp_userdata: INTEGER_32 = -21 -- Was declared in {WEL_GWL_CONSTANTS} as synonym of `gwl_userdata`. -- (from WEL_GWL_CONSTANTS) Gwlp_wndproc: INTEGER_32 = -4 -- Was declared in {WEL_GWL_CONSTANTS} as synonym of `gwl_wndproc`. -- (from WEL_GWL_CONSTANTS) feature -- Output Io: STD_FILES -- Handle to standard file setup -- (from ANY) ensure -- from ANY instance_free: class io_not_void: Result /= Void out: STRING_8 -- New string containing terse printable representation -- of current object -- (from ANY) ensure -- from ANY out_not_void: Result /= Void print (o: detachable ANY) -- Write terse external representation of o -- on standard output. -- (from ANY) ensure -- from ANY instance_free: class frozen tagged_out: STRING_8 -- New string containing terse printable representation -- of current object -- (from ANY) ensure -- from ANY tagged_out_not_void: Result /= Void feature -- Platform Operating_environment: OPERATING_ENVIRONMENT -- Objects available from the operating system -- (from ANY) ensure -- from ANY instance_free: class operating_environment_not_void: Result /= Void feature -- Session drawing_session_depth: INTEGER_32 -- (from EV_DRAWABLE_I) end_drawing_session -- End a drawing session. -- Used for optimization, to group sequence of drawings. -- note: as a drawing session can be inside another drawing session -- `end_drawing_session` has to be called as many time as `start_drawing_session` was called. -- (from EV_DRAWABLE_I) require -- from EV_DRAWABLE_I drawing_session_depth > 0 is_in_drawing_session: BOOLEAN -- Is inside a start/end drawing session? -- (from EV_DRAWABLE_I) is_in_top_drawing_session: BOOLEAN -- Is in the top start/end drawing session? -- i.e: not inside another similar drawing session. -- (from EV_DRAWABLE_I) start_drawing_session -- Start a drawing session. -- Used for optimization, to group sequence of drawings. -- note: as a drawing session can be inside another drawing session -- `end_drawing_session` has to be called as many time as `start_drawing_session` was called. -- (from EV_DRAWABLE_I) ensure -- from EV_DRAWABLE_I drawing_session_depth > 0 feature -- Vertical text alignement vta_baseline: INTEGER_32 -- The reference point is on the base line of the text. -- (from WEL_TA_CONSTANTS) vta_center: INTEGER_32 -- The reference point is aligned vertically with the center of the bounding rectangle. -- (from WEL_TA_CONSTANTS) feature --{EV_ANY_I} -- Implementation dc: WEL_DC -- Device context applied to the primitives. ensure not_void: dc /= Void get_dc -- Get `dc`. -- By default does nothing, but is -- redefined by primitives that do not keep a consistent -- dc. Example : EV_DRAWING_AREA_IMP release_dc -- Release `dc`. -- By default does nothing, but is -- redefined by primitives that do not keep a consistent -- dc. Example : EV_DRAWING_AREA_IMP invariant reference_tracked_on_brush: attached internal_brush as l_brush implies l_brush.reference_tracked brush_exists: attached internal_brush as l_internal_brush implies l_internal_brush.exists reference_tracked_on_pen: attached internal_pen as l_pen implies l_pen.reference_tracked -- from EV_ANY_I interface_coupled: is_usable implies interface /= Void and then attached_interface.implementation = Current base_make_called: is_usable implies base_make_called -- from ANY reflexive_equality: standard_is_equal (Current) reflexive_conformance: conforms_to (Current) note ca_ignore: "CA011", "CA011: too many arguments", "CA033", "CA033: too large class" copyright: "Copyright (c) 1984-2021, Eiffel Software and others" license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)" source: "[ Eiffel Software 5949 Hollister Ave., Goleta, CA 93117 USA Telephone 805-685-1006, Fax 805-685-6869 Website http://www.eiffel.com Customer support http://support.eiffel.com ]" end -- class EV_DRAWABLE_IMP -- Generated by Eiffel Studio --
For more details: eiffel.org