[KERNEL] The window subsystem has been redesigned:
-extended WDATA structures up to 128 bytes -added the background_windows constant -the draw_data array has been deleted -APPDATA.window and WDATA.thread fields added -minor fixes in the operation of external file system drivers git-svn-id: svn://kolibrios.org@9930 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
@@ -566,10 +566,6 @@ destroy_thread:
|
||||
mov edi, esi
|
||||
mov ecx, sizeof.WDATA/4
|
||||
rep stosd
|
||||
|
||||
lea edi, [esi - window_data + draw_data]
|
||||
mov ecx, sizeof.WDATA/4
|
||||
rep stosd
|
||||
popa
|
||||
|
||||
; debuggee test
|
||||
|
@@ -969,8 +969,6 @@ proc set_app_params stdcall,slot:dword, params:dword, flags:dword
|
||||
mov [SLOT_BASE + ebx + APPDATA.fd_obj], edx
|
||||
mov [SLOT_BASE + ebx + APPDATA.bk_obj], edx
|
||||
|
||||
mov ecx, [def_cursor]
|
||||
mov [SLOT_BASE + ebx + APPDATA.cursor], ecx
|
||||
mov eax, [pl0_stack]
|
||||
mov [SLOT_BASE + ebx + APPDATA.pl0_stack], eax
|
||||
add eax, RING0_STACK_SIZE
|
||||
@@ -993,22 +991,29 @@ proc set_app_params stdcall,slot:dword, params:dword, flags:dword
|
||||
|
||||
mov eax, [slot]
|
||||
mov [SLOT_BASE + ebx + APPDATA.wnd_number], al
|
||||
mov ebx, eax
|
||||
shl ebx, BSF sizeof.WDATA
|
||||
lea ecx, [draw_data + ebx];ecx - pointer to draw data
|
||||
;mov ebx, eax
|
||||
shl eax, BSF sizeof.WDATA
|
||||
add eax, window_data
|
||||
mov ecx, eax
|
||||
mov [SLOT_BASE + ebx + APPDATA.window], eax
|
||||
mov [eax + WDATA.thread], ebx
|
||||
add [eax + WDATA.thread], SLOT_BASE
|
||||
|
||||
; set window state to 'normal' (non-minimized/maximized/rolled-up) state
|
||||
mov [window_data + ebx + WDATA.fl_wstate], WSTATE_NORMAL
|
||||
mov [window_data + ebx + WDATA.fl_redraw], 1
|
||||
mov [eax + WDATA.fl_wstate], WSTATE_NORMAL + WSTATE_USED
|
||||
mov [eax + WDATA.fl_redraw], WSTATE_REDRAW
|
||||
|
||||
mov edx, [def_cursor]
|
||||
mov [eax + WDATA.cursor], edx
|
||||
|
||||
;set draw data to full screen
|
||||
xor eax, eax
|
||||
mov [ecx + RECT.left], eax
|
||||
mov [ecx + RECT.top], eax
|
||||
mov [ecx + WDATA.draw_data.left], eax
|
||||
mov [ecx + WDATA.draw_data.top], eax
|
||||
mov eax, [screen_workarea.right]
|
||||
mov [ecx + RECT.right], eax
|
||||
mov [ecx + WDATA.draw_data.right], eax
|
||||
mov eax, [screen_workarea.bottom]
|
||||
mov [ecx + RECT.bottom], eax
|
||||
mov [ecx + WDATA.draw_data.bottom], eax
|
||||
|
||||
mov ebx, [pl0_stack]
|
||||
mov esi, [params]
|
||||
|
Reference in New Issue
Block a user