/programs/system/taskbar/trunk/TASKBAR.ASM |
---|
579,7 → 579,7 |
mcall 66,1,1 |
mcall 9,process_info_buffer,-1 |
mov ecx,[ebx+30] ; PID |
mov ecx, [ebx + process_information.PID] ; PID |
mcall 18,21 |
mov [my_active_slot],eax ; WINDOW SLOT |
627,7 → 627,7 |
call set_work_ares_pf_screen |
mcall 9,process_info_buffer,-1 |
mov ecx,[process_info_buffer+30] |
mov ecx,[process_info_buffer.PID] |
mcall 18,21 |
mov [this_slot],eax |
mov [max_slot],255 |
798,7 → 798,7 |
mcall 9,process_info_buffer |
test [ebx+70],dword 10b ; window is minimized to panel |
test [ebx + process_information.wnd_state], byte 10b ; window is minimized to panel |
jnz @f |
cmp ecx,[current_active_slot] |
/programs/system/taskbar/trunk/ctx_menu.asm |
---|
1,7 → 1,7 |
;------------------------------------------------------------------------------ |
align 4 |
context_menu_start: |
mcall 40,00100111b |
mcall 40, EVM_REDRAW + EVM_KEY + EVM_BUTTON + EVM_MOUSE ;00100111b |
mov ecx, [ctx_menu_PID] |
mcall 18,21 |
mov ecx, eax |
11,13 → 11,13 |
align 4 |
ctx_menu_still: |
mcall 10 |
cmp eax, 2 |
cmp eax, EV_KEY |
jz ctx_menu_key |
cmp eax, 3 |
cmp eax, EV_BUTTON |
jz ctx_menu_button |
cmp eax, 6 |
cmp eax, EV_MOUSE |
jz ctx_menu_mouse |
call draw_ctx_menu |
75,7 → 75,7 |
mov edx, [n_slot] |
xor ecx, ecx |
test [procinfo_for_detect+70],byte 2 |
test [procinfo_for_detect.wnd_state],byte 2 |
setnz cl |
add cl, cl |
;-------------------------------------- |
102,9 → 102,9 |
sub ecx, 60 ; 41 |
shl ecx, 16 |
add ecx, 60 ; 41 |
mov esi, [system_colours + 4] ; sc.grab |
mov esi, [system_colours.grab] ; sc.grab |
or esi, 0x81000000 |
mcall ,,,[system_colours + 20],,[system_colours+8] |
mcall ,,,[system_colours.work],,[system_colours.work_dark] |
mcall 8,<0,133>,<22,17>,0x40000001 |
111,7 → 111,7 |
inc edx |
mcall ,,<40,17> |
mov ecx, [system_colours + 16] ; sc.grab_text |
mov ecx, [system_colours.grab_text] ; sc.grab_text |
or ecx, 0x10000000 |
mcall 4,<32,4>,,ctx_menu_title,ctx_menu_title_end - ctx_menu_title |
118,13 → 118,13 |
add ebx, 1 * 65536 |
mcall |
mov ecx, [system_colours + 32] ; sc.work_text |
mov ecx, [system_colours.work_text] ; sc.work_text |
or ecx, 0x80000000 |
mcall ,<4,28>,,ctx_menu_text |
mov edx, ctx_menu_text2 |
test byte [procinfo_for_detect+70], 2 |
test byte [procinfo_for_detect.wnd_state], 2 |
jz @f |
mov edx, ctx_menu_text3 |
;-------------------------------------- |
/programs/system/taskbar/trunk/drawappl.inc |
---|
28,12 → 28,12 |
need_window_tab: |
; in: ebx->process info |
; out: ZF set <=> do not draw |
cmp byte [ebx+10], '@' |
cmp byte [ebx + process_information.process_name], '@' |
jz .nodraw |
; do not draw undefined (zero-sized) windows |
cmp dword [ebx+42], 0 |
cmp dword [ebx + process_information.box.width], 0 |
jnz @f |
cmp dword [ebx+46], 0 |
cmp dword [ebx + process_information.box.height], 0 |
jz .nodraw |
;-------------------------------------- |
align 4 |
40,14 → 40,14 |
@@: |
; do not draw OpenDialog windows |
push edi |
mov edi, dword [ebx+10] |
mov edi, dword [ebx + process_information.process_name] |
or edi, 0x20202020 |
cmp edi, 'open' |
jne @f |
mov edi, dword [ebx+14] |
mov edi, dword [ebx + process_information.process_name + 4] |
or edi, 0x20202020 |
cmp dword [ebx+14], 'dial' |
cmp edi, 'dial' |
jne @f |
pop edi |
56,18 → 56,18 |
align 4 |
@@: |
pop edi |
cmp dword [ebx+10], 'ICON' |
cmp dword [ebx + process_information.process_name], 'ICON' |
jnz @f |
cmp [ebx+42], dword 51 |
cmp [ebx + process_information.box.width], dword 51 |
jnz @f |
cmp [ebx+46], dword 51 |
cmp [ebx + process_information.box.height], dword 51 |
jz .nodraw |
;-------------------------------------- |
align 4 |
@@: |
cmp [ebx+10], dword ' ' |
cmp dword[ebx + process_information.process_name], ' ' |
;-------------------------------------- |
align 4 |
.nodraw: |
180,8 → 180,8 |
shr ecx,16 |
add bx,cx |
mov edx, procinfo_window_tabs+10 |
mcall 4,,[system_colours.work_button_text],,11 |
mov edx, procinfo_window_tabs.process_name |
mcall 4,,[system_colours.work_button_text],, sizeof.process_information.process_name |
;-------------------------------------- |
align 4 |
.nodraw: |
/programs/system/taskbar/trunk/drawwind.inc |
---|
8,10 → 8,10 |
mov [running_applications],-1 |
mcall 12,1 |
mcall 48,3,system_colours,10*4 |
mcall 48,3,system_colours, sizeof.system_colors |
mov eax, [system_colours+4*6] |
mov edx,[system_colours+4*6] |
mov eax, [system_colours.work_button] |
mov edx,[system_colours.work_button] |
mov eax,COLOR_CHANGE_MAGNITUDE |
call subtract_color_change_magnitude |
mov [wcolor], edx |
306,7 → 306,7 |
align 4 |
@@: |
; Inserted code for drawing buttons 103, 104, 105 (Clean, Restore, Exchange windows) |
mov esi, dword [system_colours+24] ; drawing buttons |
mov esi, dword [system_colours.work_button] ; drawing buttons |
and esi, 0x00ffffff |
mov edx, 0x60000000 + 103 |
mov ecx, [height] |
/programs/system/taskbar/trunk/u_data.inc |
---|
34,7 → 34,7 |
;------------------------------------------------------------------------------ |
align 4 |
system_colours system_colors ; rd 10 |
system_colours system_colors |
;------------------------------------------------------------------------------ |
align 4 |
app_list rd 50 |
48,16 → 48,13 |
;----------------------------------------------------------------------------- |
align 4 |
library_path: |
process_info_buffer: |
rb 1024 |
process_info_buffer process_information |
;------------------------------------------------------------------------------ |
align 4 |
procinfo_for_detect: |
rb 1024 |
procinfo_for_detect process_information |
;------------------------------------------------------------------------------ |
align 4 |
procinfo_window_tabs: |
rb 1024 |
procinfo_window_tabs process_information |
;----------------------------------------------------------------------------- |
align 4 |
bootparam: |
/programs/system/zkey/trunk/ZKEY.ASM |
---|
11,13 → 11,16 |
use32 |
org 0x0 |
db 'MENUET00' ; 8 byte id |
dd 38 ; required os |
db 'MENUET01' |
dd 1 ; version |
dd STARTAPP ; program start |
dd I_END ; program image size |
dd 0x100000 ; required amount of memory |
dd 0x00000000 ; reserved=no extended header |
dd MEM ; size memory for program |
dd STACKTOP ; base stack pointer |
dd 0 |
dd 0 |
include '../../../macros.inc' |
include "ASPAPI.INC" |
N_KEYCOLOR equ 0x00677889 ; Normal button color |
26,8 → 29,6 |
TEXTCOLOR equ 0x00FFFFFF ; Button caption color |
ASCII_KEYMAP_SIZE equ 128 |
PROCINFO_SIZE equ 1024 |
PROCINFO_BUFF equ ascii_keymap + ASCII_KEYMAP_SIZE |
STARTAPP: |
mov ecx, 1 ; to send scancodes. |
189,7 → 190,7 |
mov [zkey_window], eax |
set_event_mask: |
mov eax, 40 |
mov ebx, 39 |
mov ebx, EVM_REDRAW + EVM_KEY + EVM_BUTTON + EVM_MOUSE ; 39 ; 100111b |
int 0x40 |
still: |
198,8 → 199,9 |
call set_keyboard_mode |
; delete_switch_button |
mov eax, 8 |
mov edx, 0x80700000 |
mov edx, BT_DEL + 0x00700000 |
int 0x40 |
mov byte [red_type], 2 |
call draw_window.draw_switch_button |
206,11 → 208,11 |
mov eax, 10 ; Wait for an event in the queue. |
int 0x40 |
cmp al,1 ; redraw request ? |
cmp al, EV_REDRAW ; redraw request ? |
jz red |
cmp al,2 ; key in buffer ? |
cmp al, EV_KEY ; key in buffer ? |
jz key |
cmp al,3 ; button in buffer ? |
cmp al, EV_BUTTON ; button in buffer ? |
jz button |
jmp still |
391,7 → 393,7 |
mov ebx, PROCINFO_BUFF |
mov ecx, [receiver_window] |
int 0x40 |
movzx ecx, byte [ebx + 75] |
movzx ecx, byte [ebx + process_information.keyboard_mode] |
ret |
;************************************ |
477,4 → 479,11 |
I_END: ; End of application code and data marker |
ascii_keymap: |
ascii_keymap: rb ASCII_KEYMAP_SIZE |
PROCINFO_BUFF process_information |
rb 4096 |
STACKTOP: |
MEM: |