Rev 7786 | Rev 8484 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 7786 | Rev 7848 | ||
---|---|---|---|
Line 441... | Line 441... | ||
441 | add edx,[menu_data] ; edx points to child's base address |
441 | add edx,[menu_data] ; edx points to child's base address |
442 | mov [edx + x_start],cx ; xstart for new thread |
442 | mov [edx + x_start],cx ; xstart for new thread |
443 | mov cx,[esi + y_end] ; y_end in cx |
443 | mov cx,[esi + y_end] ; y_end in cx |
444 | mov bl,[esi + rows] ; number of buttons in bl |
444 | mov bl,[esi + rows] ; number of buttons in bl |
445 | sub bl,ah ; number of btn from bottom |
445 | sub bl,ah ; number of btn from bottom |
- | 446 | ||
- | 447 | ; Leency: store vars for case when attachement=top |
|
- | 448 | pusha |
|
- | 449 | mov [prior_thread_selected_y_end], bl |
|
- | 450 | mcall 9,procinfo,-1 |
|
- | 451 | m2m [prior_thread_y], dword[procinfo+38] |
|
- | 452 | m2m [prior_thread_h], dword[procinfo+46] |
|
- | 453 | popa |
|
- | 454 | ||
446 | movzx eax,al |
455 | movzx eax,al |
447 | mov [buffer],eax ; thread id in buffer |
456 | mov [buffer],eax ; thread id in buffer |
448 | movzx ebx,bl |
457 | movzx ebx,bl |
449 | push edx |
458 | push edx |
450 | mov eax,BTN_HEIGHT |
459 | mov eax,BTN_HEIGHT |
Line 453... | Line 462... | ||
453 | pop edx |
462 | pop edx |
454 | mov [edx + y_end],cx ; store y_end |
463 | mov [edx + y_end],cx ; store y_end |
455 | mov edi,esi |
464 | mov edi,esi |
456 | call backconvert ; get number of this process (al) |
465 | call backconvert ; get number of this process (al) |
457 | mov [edx + parent],al ; store number of parent process |
466 | mov [edx + parent],al ; store number of parent process |
- | 467 | ||
458 | mov al,[edx + rows] |
468 | mov al,[edx + rows] |
459 | mov [edx + cur_sel],al ; clear current selected element |
469 | mov [edx + cur_sel],al ; clear current selected element |
460 | mov [edx + prev_sel],al ; clear previous selected element |
470 | mov [edx + prev_sel],al ; clear previous selected element |
461 | mov [edx + child],0 |
471 | mov [edx + child],0 |
Line 709... | Line 719... | ||
709 | movzx ebx,[edi + rows] |
719 | movzx ebx,[edi + rows] |
710 | imul eax,ebx,BTN_HEIGHT ; eax = height of window |
720 | imul eax,ebx,BTN_HEIGHT ; eax = height of window |
711 | movzx ecx,[edi + y_end] |
721 | movzx ecx,[edi + y_end] |
712 | cmp [panel_attachment],byte 1 |
722 | cmp [panel_attachment],byte 1 |
713 | je @f |
723 | je @f |
- | 724 | ||
- | 725 | ||
- | 726 | ;cmp ebp,0x000 ; if this is first started thread |
|
- | 727 | ;je .1 ; then show it at the very top |
|
- | 728 | ||
714 | ; add ecx,eax |
729 | push ebx eax |
- | 730 | ; if attachement=top |
|
- | 731 | ; then NEW_WIN_Y = PRIOR_WIN_Y + PRIOR_WIN_H - ITEM_H + 1 - SEL_ITEM_Y |
|
- | 732 | ||
- | 733 | mov ecx, [prior_thread_y] |
|
- | 734 | add ecx, [prior_thread_h] |
|
715 | ; sub ecx,BTN_HEIGHT |
735 | sub ecx, BTN_HEIGHT |
- | 736 | inc ecx |
|
- | 737 | ||
- | 738 | xor eax, eax |
|
- | 739 | mov al, [prior_thread_selected_y_end] |
|
- | 740 | mov ebx, BTN_HEIGHT |
|
- | 741 | mul ebx |
|
- | 742 | ||
- | 743 | sub ecx, eax |
|
- | 744 | ||
- | 745 | mov [edi + cur_sel],1 ;if attachement=top then set item=1 selected |
|
- | 746 | ||
- | 747 | pop eax ebx |
|
- | 748 | ||
716 | jmp .1 |
749 | jmp .1 |
717 | ;-------------------------------------- |
750 | ;-------------------------------------- |
718 | align 4 |
751 | align 4 |
719 | @@: |
752 | @@: |
720 | sub ecx,eax ; ecx = Y_START |
753 | sub ecx,eax ; ecx = Y_START |
Line 937... | Line 970... | ||
937 | .top: dw ? |
970 | .top: dw ? |
938 | ;-------------------------------------- |
971 | ;-------------------------------------- |
939 | sc system_colors |
972 | sc system_colors |
940 | ;-------------------------------------- |
973 | ;-------------------------------------- |
941 | last_key db ? |
974 | last_key db ? |
- | 975 | prior_thread_y dd ? |
|
- | 976 | prior_thread_h dd ? |
|
- | 977 | prior_thread_selected_y_end db ? |
|
942 | ;------------------------------------------------------------------------------ |
978 | ;------------------------------------------------------------------------------ |
943 | align 4 |
979 | align 4 |
944 | menu_data dd ? |
980 | menu_data dd ? |
945 | ;-------------------------------------- |
981 | ;-------------------------------------- |
946 | virtual at 0 ; PROCESSES TABLE (located at menu_data) |
982 | virtual at 0 ; PROCESSES TABLE (located at menu_data) |