KolibriOS kernel
window.inc File Reference

Variables

rd common_colours
 
RECT draw_limits
 
label syscall_draw_window
 system function 0 More...
 
label syscall_setpixel
 system function 1 More...
 
label syscall_writetext
 system function 4 More...
 
label syscall_drawrect
 system function 13 More...
 
label syscall_drawline
 system function 38 More...
 
label syscall_display_settings
 system function 48 More...
 
label syscall_set_window_shape
 system function 50 ; Set window shape address:

ebx = 0 ecx = shape data address

-----------------------— ; Set window shape scale:

ebx = 1 ecx = scale power (resulting scale is 2^ebx)

More...
 
label syscall_move_window
 system function 67 More...
 
label syscall_window_settings
 system function 71 More...
 
label set_window_defaults
 
label calculatescreen
 ? Scan all windows from bottom to top, calling setscreen for each one ? intersecting given screen area

eax = left ebx = top ecx = right edx = bottom

More...
 
label repos_windows
 
label draw_rectangle
 > eax = pack[16(left), 16(right)]

ebx = pack[16(top), 16(bottom)] esi = color

?? RR GG BB ; 0x01000000 negation ; 0x02000000 used for draw_rectangle without top line ; for example drawwindow_III and drawwindow_IV More...

 
label drawwindow_I_caption
 
label drawwindow_I
 
label drawwindow_III_caption
 
label drawwindow_III
 
label waredraw
 ? Activate window, redrawing if necessary More...
 
label minimize_all_window
 
label minimize_window
 > eax = window number on screen More...
 
label restore_minimized_window
 > eax = window number on screen More...
 
label window_check_events
 
label sys_window_maximize_handler
 > esi = process slot More...
 
label sys_window_rollup_handler
 > esi = process slot More...
 
label sys_window_end_moving_handler
 > eax = old (original) window box

ebx = new (final) window box esi = process slot

More...
 
label sys_window_moving_handler
 > eax = old (from previous call) window box

ebx = new (current) window box esi = process_slot

More...
 
dd window_topleft
 type 4 {set by skin} More...
 
label window___invalidate_screen
 > eax = old (original) window box

ebx = new (final) window box edi = pointer to WDATA struct

More...
 
label window___set_window_box
 > eax = pointer to BOX struct

bl = new window state flags edi = pointer to WDATA struct

More...
 
label window___set_window_clientbox
 > edi = pointer to WDATA struct More...
 
label window___sys_set_window
 < edx = pointer to WDATA struct More...
 
label window___check_window_position
 ? Check if window is inside screen area

edi = pointer to WDATA

More...
 
label window___get_titlebar_height
 > edi = pointer to WDATA More...
 
label window___get_rolledup_height
 > edi = pointer to WDATA More...
 
label window___set_screen
 ? Reserve window area in screen buffer

eax = left ebx = top ecx = right edx = bottom esi = process number

More...
 
dd ff_x
 
dd ff_y
 
dd ff_width
 
dd ff_xsz
 
dd ff_ysz
 
dd ff_scale
 
label window___window_activate
 Activate window esi = pointer to WIN_POS+ window data. More...
 
label window___window_deactivate
 Deactivate window esi = pointer to WIN_POS+ window data. More...
 
label window___check_window_draw
 Check if window is necessary to draw edi = pointer to WDATA. More...
 
label window___draw_window_caption
 
label window___draw_negative_box
 Draw negative box edi = pointer to BOX struct. More...
 
label window___get_rect
 void __fastcall get_window_rect(struct RECT* rc); ecx = pointer to RECT More...
 
label window___redraw_top_wnd
 redraw all windows one above the window

eax = left ebx = top ecx = right edx = bottom esi = process number

! corrupted edi More...

 
label window___set_top_wnd
 call set_screen for all windows one above the window

eax = left ebx = top ecx = right edx = bottom esi = process number

! corrupted edi More...

 

Variable Documentation

◆ calculatescreen

label calculatescreen

? Scan all windows from bottom to top, calling setscreen for each one ? intersecting given screen area

eax = left ebx = top ecx = right edx = bottom

Source
gui/window.inc:534

◆ common_colours

rd common_colours
Initial value
48
Source
gui/window.inc:18

◆ draw_limits

RECT draw_limits
Initial value
Source
gui/window.inc:19

◆ draw_rectangle

label draw_rectangle

> eax = pack[16(left), 16(right)]

ebx = pack[16(top), 16(bottom)] esi = color

?? RR GG BB ; 0x01000000 negation ; 0x02000000 used for draw_rectangle without top line ; for example drawwindow_III and drawwindow_IV

Source
gui/window.inc:728

◆ drawwindow_I

label drawwindow_I

◆ drawwindow_I_caption

label drawwindow_I_caption

◆ drawwindow_III

label drawwindow_III

◆ drawwindow_III_caption

label drawwindow_III_caption

◆ ff_scale

dd ff_scale
Initial value
?
Source
gui/window.inc:1864

◆ ff_width

dd ff_width
Initial value
?
Source
gui/window.inc:1861

◆ ff_x

dd ff_x
Initial value
?
Source
gui/window.inc:1859

◆ ff_xsz

dd ff_xsz
Initial value
?
Source
gui/window.inc:1862

◆ ff_y

dd ff_y
Initial value
?
Source
gui/window.inc:1860

◆ ff_ysz

dd ff_ysz
Initial value
?
Source
gui/window.inc:1863

◆ minimize_all_window

label minimize_all_window

◆ minimize_window

label minimize_window

> eax = window number on screen

corrupts [dl*]

Source
gui/window.inc:1132

◆ repos_windows

label repos_windows

◆ restore_minimized_window

label restore_minimized_window

> eax = window number on screen

corrupts [dl*]

Source
gui/window.inc:1192

◆ set_window_defaults

label set_window_defaults

◆ sys_window_end_moving_handler

label sys_window_end_moving_handler

> eax = old (original) window box

ebx = new (final) window box esi = process slot

Source
gui/window.inc:1395

◆ sys_window_maximize_handler

label sys_window_maximize_handler

> esi = process slot

Source
gui/window.inc:1266

◆ sys_window_moving_handler

label sys_window_moving_handler

> eax = old (from previous call) window box

ebx = new (current) window box esi = process_slot

Source
gui/window.inc:1423

◆ sys_window_rollup_handler

label sys_window_rollup_handler

> esi = process slot

Source
gui/window.inc:1331

◆ syscall_display_settings

label syscall_display_settings

system function 48

Source
gui/window.inc:193

◆ syscall_draw_window

label syscall_draw_window

system function 0

Source
gui/window.inc:25

◆ syscall_drawline

label syscall_drawline

system function 38

Source
gui/window.inc:167

◆ syscall_drawrect

label syscall_drawrect

system function 13

Source
gui/window.inc:139

◆ syscall_move_window

label syscall_move_window

system function 67

Source
gui/window.inc:433

◆ syscall_set_window_shape

label syscall_set_window_shape

system function 50 ; Set window shape address:

ebx = 0 ecx = shape data address

-----------------------— ; Set window shape scale:

ebx = 1 ecx = scale power (resulting scale is 2^ebx)

Source
gui/window.inc:413

◆ syscall_setpixel

label syscall_setpixel

system function 1

Source
gui/window.inc:77

◆ syscall_window_settings

label syscall_window_settings

system function 71

Source
gui/window.inc:489

◆ syscall_writetext

label syscall_writetext

system function 4

Source
gui/window.inc:96

◆ waredraw

label waredraw

? Activate window, redrawing if necessary

Source
gui/window.inc:1018

◆ window___check_window_draw

label window___check_window_draw

Check if window is necessary to draw edi = pointer to WDATA.

Source
gui/window.inc:2169

◆ window___check_window_position

label window___check_window_position

? Check if window is inside screen area

edi = pointer to WDATA

Source
gui/window.inc:1725

◆ window___draw_negative_box

label window___draw_negative_box

Draw negative box edi = pointer to BOX struct.

Source
gui/window.inc:2359

◆ window___draw_window_caption

label window___draw_window_caption

◆ window___get_rect

label window___get_rect

void __fastcall get_window_rect(struct RECT* rc); ecx = pointer to RECT

Source
gui/window.inc:2392

◆ window___get_rolledup_height

label window___get_rolledup_height

> edi = pointer to WDATA

Source
gui/window.inc:1827

◆ window___get_titlebar_height

label window___get_titlebar_height

> edi = pointer to WDATA

Source
gui/window.inc:1810

◆ window___invalidate_screen

label window___invalidate_screen

> eax = old (original) window box

ebx = new (final) window box edi = pointer to WDATA struct

Source
gui/window.inc:1454

◆ window___redraw_top_wnd

label window___redraw_top_wnd

redraw all windows one above the window

eax = left ebx = top ecx = right edx = bottom esi = process number

! corrupted edi

Source
gui/window.inc:2419

◆ window___set_screen

label window___set_screen

? Reserve window area in screen buffer

eax = left ebx = top ecx = right edx = bottom esi = process number

Source
gui/window.inc:1857

◆ window___set_top_wnd

label window___set_top_wnd

call set_screen for all windows one above the window

eax = left ebx = top ecx = right edx = bottom esi = process number

! corrupted edi

Source
gui/window.inc:2433

◆ window___set_window_box

label window___set_window_box

> eax = pointer to BOX struct

bl = new window state flags edi = pointer to WDATA struct

Source
gui/window.inc:1503

◆ window___set_window_clientbox

label window___set_window_clientbox

> edi = pointer to WDATA struct

Source
gui/window.inc:1579

◆ window___sys_set_window

label window___sys_set_window

< edx = pointer to WDATA struct

Source
gui/window.inc:1634

◆ window___window_activate

label window___window_activate

Activate window esi = pointer to WIN_POS+ window data.

Source
gui/window.inc:2033

◆ window___window_deactivate

label window___window_deactivate

Deactivate window esi = pointer to WIN_POS+ window data.

Source
gui/window.inc:2116

◆ window_check_events

label window_check_events

◆ window_topleft

dd window_topleft

type 4 {set by skin}

Initial value
1, 21, 0, 0, 5, 20, 5, ?, 5, ?
Source
gui/window.inc:1439