Given the flow of dialogue and move windows icons different stack. The dialog window now draws the icon in its own buffer.

git-svn-id: svn://kolibrios.org@4027 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
GerdtR
2013-10-14 23:04:34 +00:00
parent a0126a688c
commit 562cdf4dca
3 changed files with 20 additions and 40 deletions

View File

@@ -124,9 +124,9 @@ START: ; start of execution
@@:
;######################################################################
call FillIconsOffs
call FillIconsOffs ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> MaxNumIcon,IconsOffs
mcall 40,0100000b
mcall 40,0100000b ;<3B><EFBFBD> ⮫쪮 ᮡ<><E1AEA1><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1AEA2> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD> <20> <20><><EFBFBD> <20><><EFBFBD>
mov eax,[icon_count]
mov bl,ICONS_DRAW_COUNTH
@@ -138,7 +138,7 @@ START: ; start of execution
and eax,0FFh
mov [sbIcons.max_area],eax
mcall 51,1,BGRedrawThread,stack_bredraw
mcall 51,1,BGRedrawThread,stack_bredraw ;<3B><><EFBFBD><EFBFBD><EFBFBD><E1AAA0> <20><><20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1AEA2> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
stdcall [OpenDialog_Init],OpenDialog_data
messages:
@@ -339,7 +339,7 @@ MovingIcon:
;qweqwe:
mov [MovingActiv],1
mcall 51,1,MovingWnd,stack_dlg ;CreateThread MovingWnd,stack_dlg
mcall 51,1,MovingWnd,stack_mov ;CreateThread MovingWnd,stack_dlg
.WaitLB:
mcall 37,2 ;GetMouseKey
test al,001b
@@ -1149,7 +1149,6 @@ IconNoDraw dd -1 ;-1
bFixIcons dd 1
bNotSave dd 0
bIcoBuff dd 0 ;1, <20>᫨ IconArea <20><><EFBFBD><EFBFBD><EFBFBD>
LButtonActiv dd 0
RButtonActiv dd 0
@@ -1367,8 +1366,9 @@ I_END:
IconArea rb 4*ICON_SIZE*ICON_SIZE
;\
sc system_colors
align 4
ScreenX rw 1
ScreenY rw 1
@@ -1383,10 +1383,11 @@ AddY rd 1
SelIcon rd 1
DlgSelIcon rd 1
slotDlgAdd rd 1
DlgBufImg rb IMG_SIZE*IMG_SIZE*3
sc system_colors
align 4
bufStdIco rb 40
IconsOffs rd 100
PIcoDB rd 1
@@ -1424,12 +1425,13 @@ align 4
temp_dir_pach rb 1024
fname_Info rb 1024
;-------------------------------------------------------------------------------
rb 1024
rb 512
stack_mov:
rb 512
stack_dlg:
align 4
rb 1024
rb 512
stack_bredraw:
rb 1024
rb 512
stack_area:
;------------------------------------------------------------------------------
ENDMEM:

View File

@@ -474,15 +474,6 @@ local IcoX:DWORD,\
IcoY:DWORD,\
iIcon:DWORD
@@: ;<EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
cmp [bIcoBuff],1
jne @f
mcall 5,1
jmp @b
@@:
mov [bIcoBuff],1 ;<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> IconArea
mov ecx,[sbIcons.position]
xor eax,eax
m2m dword[iIcon],0
@@ -510,7 +501,7 @@ local IcoX:DWORD,\
.DrawIcoStolb:
push ecx
mov edi,IconArea
mov edi,DlgBufImg
mov edx,IMG_SIZE
.DrawLine:
@@ -538,7 +529,7 @@ local IcoX:DWORD,\
mov edx,[IcoX]
shl edx,16
mov dx,word[IcoY]
mcall 7,IconArea,<IMG_SIZE,IMG_SIZE>
mcall 7,DlgBufImg,<IMG_SIZE,IMG_SIZE>
inc [iIcon]
mov eax,[iIcon]
@@ -557,7 +548,7 @@ local IcoX:DWORD,\
.endDrawIcon:
mov ecx,IMG_SIZE*IMG_SIZE
mov edi,IconArea
mov edi,DlgBufImg
mov eax,[sc.work]
mov ebx,eax
shr ebx,16
@@ -581,7 +572,7 @@ local IcoX:DWORD,\
mov edx,[IcoX]
shl edx,16
mov dx,word[IcoY]
mcall 7,IconArea,<IMG_SIZE,IMG_SIZE>
mcall 7,DlgBufImg,<IMG_SIZE,IMG_SIZE>
.Dalee:
add dword[IcoY],IMG_SIZE+SPCH
@@ -594,7 +585,6 @@ local IcoX:DWORD,\
.endProc:
mov [bIcoBuff],0 ;<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ret
endp
@@ -641,7 +631,7 @@ proc DrawSelIcon
add esi,[raw_pointer]
add esi,44
mov edi,IconArea
mov edi,DlgBufImg
mov edx,IMG_SIZE
.DrawLine:
@@ -664,7 +654,7 @@ proc DrawSelIcon
dec edx
jnz .DrawLine
mcall 7,IconArea,<IMG_SIZE,IMG_SIZE>,<15,15>
mcall 7,DlgBufImg,<IMG_SIZE,IMG_SIZE>,<15,15>
ret
endp

View File

@@ -3,15 +3,6 @@ BGRedrawThread:
mcall 40,010000b
BGRTRedrawIcons:
@@:
cmp [bIcoBuff],1 ;<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
jne @f
mcall 5,1
jmp @b
@@:
mov [bIcoBuff],1
mcall 48,5
mov dx,ax
shr eax,16
@@ -36,9 +27,6 @@ BGRTRedrawIcons:
loop @b
.NoDraw:
mov [bIcoBuff],0
BGRTmessages:
mcall 10
sub eax,5