retype fuction .check_offset
git-svn-id: svn://kolibrios.org@295 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
; <Lrz> 23.01.2007 <20><>䨪ᥫ <20><EFBFBD><EFBFBD><EFBFBD> <20>맢<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <20>ࠢ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> )).
|
||||
; <Lrz> 26.01.2007 <20><>ଠ<EFBFBD>쭠<EFBFBD> ࠡ<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>ࠢ<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> .check_offset
|
||||
; <Lrz> 24.01.2007 <20><>䨪ᥫ <20><><EFBFBD><EFBFBD> <20>맢<EFBFBD><EBA7A2><EFBFBD><EFBFBD> <20><> <20>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> )).
|
||||
; <Lrz> 22.01.2007 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD> <20><><EFBFBD> ࠡ<><E0A0A1><EFBFBD> <20> <20>뤥<EFBFBD><EBA4A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> 㤠<><E3A4A0><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>४⭠<E0A5AA> ࠡ<><E0A0A1><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>襩 del & backspase
|
||||
; <Lrz> 20.01.2007 ॠ<><E0A5A0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>뤥<EFBFBD><EBA4A5><EFBFBD><EFBFBD><EFBFBD> ⥪<><E2A5AA><EFBFBD> <20><> shift
|
||||
; <Lrz> 12.12.2006 ॠ<><E0A5A0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>প<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> insert <20> ᥣ<><E1A5A3><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> ࠡ<>⠥<EFBFBD>!!!!
|
||||
@@ -281,40 +282,42 @@ ret
|
||||
;----------------------------------------------------------
|
||||
.check_offset:
|
||||
pushad
|
||||
push dword ed_offset ;<3B><><EFBFBD>࠭<EFBFBD><E0A0AD> ᬥ饭<E1ACA5><E9A5AD>
|
||||
mov ecx,ed_pos
|
||||
mov ebx,ed_offset
|
||||
cmp ebx,ecx
|
||||
ja .sub_8
|
||||
|
||||
push ebx
|
||||
call .get_n ;<3B><><EFBFBD><EFBFBD>稬 <20><><EFBFBD>-<2D><> ᨬ<><E1A8AC><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD> ॣ<><E0A5A3><EFBFBD> edx:eax
|
||||
mov ebx,eax
|
||||
mov eax,ed_pos
|
||||
xor edx,edx
|
||||
idiv ebx
|
||||
xor edx,edx
|
||||
imul eax,ebx
|
||||
mov ed_offset,eax
|
||||
pop ebx
|
||||
cmp ax,bx
|
||||
je @f
|
||||
;;;;;;;; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>訢<EFBFBD><E8A8A2><EFBFBD><EFBFBD> <20>ᥩ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>אַ㣮<EFACAE>쭨<EFBFBD><ECADA8>
|
||||
mov ebx,ed_left
|
||||
inc ebx
|
||||
shl ebx,16
|
||||
mov bx,ed_width
|
||||
dec ebx
|
||||
mov edx,ed_color
|
||||
call .draw_bg_eax
|
||||
mov dword [esp+28],0
|
||||
@@: popad
|
||||
ret
|
||||
;==========================================================
|
||||
;=== <20><>ࠡ<EFBFBD>⪠ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> =================================
|
||||
;==========================================================
|
||||
.key:
|
||||
pusha
|
||||
test word ed_flags,ed_focus ; <20> <20><> <20> 䮪<><E4AEAA><EFBFBD>, <20><>室<EFBFBD><E5AEA4>
|
||||
je .no_figure ;@f
|
||||
mov edx,ebx
|
||||
add edx,eax ;ed_offset+width editbox
|
||||
cmp edx,ecx
|
||||
ja @f
|
||||
|
||||
mov edx,ed_size
|
||||
sub edx,eax
|
||||
cmp edx,8
|
||||
jbe .add_8
|
||||
mov ebx,edx
|
||||
; add ebx,8
|
||||
jmp .chk_d
|
||||
|
||||
.sub_8: cmp ecx,0
|
||||
je .sub_min
|
||||
cmp ebx,8
|
||||
jbe .sub_min
|
||||
sub ebx,8 ;ebx=ed_offset
|
||||
jmp .chk_d
|
||||
.sub_min:
|
||||
xor ebx,ebx
|
||||
jmp .chk_d
|
||||
|
||||
.add_8: mov ebx,edx
|
||||
; ;----------- <20>⫠<EFBFBD><E2ABA0><EFBFBD>
|
||||
; pushad
|
||||
; mov [data_of_code],0
|
||||
; mov eax,edi;word ed_flags
|
||||
; mov eax,ebx;ed_offset
|
||||
; mov edi,data_of_code
|
||||
; call .str
|
||||
; ;<3B><>ᮢ<EFBFBD><E1AEA2><EFBFBD><EFBFBD> 䮭<>
|
||||
@@ -333,6 +336,49 @@ pusha
|
||||
; popad
|
||||
; ;----------- <20>⫠<EFBFBD><E2ABA0><EFBFBD>
|
||||
|
||||
.chk_d: mov ed_offset,ebx
|
||||
|
||||
call .draw_bg
|
||||
mov dword [esp+28],-1
|
||||
popad
|
||||
ret
|
||||
|
||||
@@:
|
||||
mov dword [esp+28],0
|
||||
popad
|
||||
ret
|
||||
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
; mov ebx,eax
|
||||
; mov eax,ed_pos
|
||||
; xor edx,edx
|
||||
; idiv ebx
|
||||
; xor edx,edx
|
||||
; imul eax,ebx
|
||||
; mov ed_offset,eax
|
||||
; pop ebx
|
||||
; cmp ax,bx
|
||||
; je @f
|
||||
;;;;;;;; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>訢<EFBFBD><E8A8A2><EFBFBD><EFBFBD> <20>ᥩ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>אַ㣮<EFACAE>쭨<EFBFBD><ECADA8>
|
||||
; mov ebx,ed_left
|
||||
; inc ebx
|
||||
; shl ebx,16
|
||||
; mov bx,ed_width
|
||||
; dec ebx
|
||||
; mov edx,ed_color
|
||||
; call .draw_bg_eax
|
||||
; mov dword [esp+28],0
|
||||
;@@: popad
|
||||
; ret
|
||||
;==========================================================
|
||||
;=== <20><>ࠡ<EFBFBD>⪠ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> =================================
|
||||
;==========================================================
|
||||
.key:
|
||||
pusha
|
||||
test word ed_flags,ed_focus ; <20> <20><> <20> 䮪<><E4AEAA><EFBFBD>, <20><>室<EFBFBD><E5AEA4>
|
||||
je .no_figure ;@f
|
||||
|
||||
xor ecx,ecx
|
||||
push eax
|
||||
inc ecx
|
||||
@@ -453,8 +499,8 @@ pusha
|
||||
; <20><>⠢<EFBFBD>塞 <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>㤠, <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
; 㢥<><E3A2A5>稢<EFBFBD><E7A8A2><EFBFBD> <20><><EFBFBD>祭<EFBFBD><E7A5AD> ࠧ<><E0A0A7><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>樨
|
||||
inc dword ed_size
|
||||
call .draw_all2
|
||||
inc dword ed_pos
|
||||
call .draw_all2
|
||||
jmp .shift;.draw_cursor_text
|
||||
.delete:
|
||||
mov edx,ed_size
|
||||
@@ -509,7 +555,13 @@ pusha
|
||||
and word ed_flags,ed_shift_cl
|
||||
call .clear_cursor
|
||||
call .check_offset
|
||||
call .get_n
|
||||
;;;;;;;;;;;;;;;
|
||||
cmp eax,0
|
||||
je @f
|
||||
call .draw_bg
|
||||
ret
|
||||
;;;;;;;;;;;;;;;
|
||||
@@: call .get_n
|
||||
push eax
|
||||
mov ebx,ed_offset
|
||||
add eax,ebx ;eax = w_off= ed_offset+width
|
||||
@@ -591,7 +643,7 @@ pusha
|
||||
|
||||
.shift: ;;;;;;;SHIFT
|
||||
|
||||
call .draw_bg
|
||||
call .draw_bg ;<3B><> <20><>⨬<EFBFBD><E2A8AC>쭮
|
||||
test word ed_flags,ed_shift
|
||||
je .f_exit
|
||||
;;;;;;SHIFT end
|
||||
|
@@ -92,7 +92,7 @@ edit2 edit_box 168,10,30,0xffffff,0,0,0,99,ed_buffer.2,ed_figure_only
|
||||
edit3 edit_box 35,10,70,0xffffff,0,0,0,9,ed_buffer.3,ed_figure_only
|
||||
edit4 edit_box 16,10,90,0xffffff,0,0,0,1,ed_buffer.4,ed_figure_only
|
||||
editboxes_end:
|
||||
data_of_code dd 0
|
||||
;data_of_code dd 0
|
||||
ed_buffer:
|
||||
.1: rb 513;256
|
||||
.2: rb 100
|
||||
@@ -101,7 +101,7 @@ ed_buffer:
|
||||
;text_b: db '<27><><EFBFBD>-<2D><> ᨬ<><E1A8AC><EFBFBD><EFBFBD><EFBFBD>'
|
||||
;buffer: dd 0
|
||||
buffer_end:
|
||||
hed db 'EDITBOX optimization and retype <Lrz> date 24.01.2007'
|
||||
hed db 'EDITBOX optimization and retype <Lrz> date 26.01.2007'
|
||||
i_end1:
|
||||
rb 2048
|
||||
i_end:
|
||||
|
Reference in New Issue
Block a user