Subversion Repositories Kolibri OS

Rev

Rev 7571 | Rev 7577 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 7571 Rev 7576
Line 21... Line 21...
21
}
21
}
Line 22... Line 22...
22
 
22
 
23
TED_PANEL_NULL	 equ 0 ;­¥â ®âªàë⮩ ¯ ­¥«¨
23
TED_PANEL_NULL	 equ 0 ;­¥â ®âªàë⮩ ¯ ­¥«¨
24
TED_PANEL_FIND	 equ 1 ;¯ ­¥«ì ¯®¨áª 
24
TED_PANEL_FIND	 equ 1 ;¯ ­¥«ì ¯®¨áª 
-
 
25
TED_PANEL_SYNTAX equ 2 ;¯ ­¥«ì ¢ë¡®à  ä ©«®¢ ¯®¤á¢¥âª¨
25
TED_PANEL_SYNTAX equ 2 ;¯ ­¥«ì ¢ë¡®à  ä ©«®¢ ¯®¤á¢¥âª¨
26
TED_PANEL_REPLACE equ 3 ;¯ ­¥«ì § ¬¥­ë
Line 26... Line 27...
26
TED_PANEL_WIDTH  equ 150 ;è¨à¨­  ¯ ­¥«¨
27
TED_PANEL_WIDTH  equ 150 ;è¨à¨­  ¯ ­¥«¨
27
 
28
 
28
TED_LINES_IN_NEW_FILE equ 30 ;ç¨á«® áâப ¢ ­®¢®¬ ä ©«¥
29
TED_LINES_IN_NEW_FILE equ 30 ;ç¨á«® áâப ¢ ­®¢®¬ ä ©«¥
Line 555... Line 556...
555
align 16
556
align 16
556
proc ted_is_select uses ebx
557
proc ted_is_select uses ebx
557
	xor al,al
558
	xor al,al
558
	cmp ted_drag_m,1
559
	cmp ted_drag_m,1
559
	je @f
560
	je @f
560
		mov al,1
561
		inc al
561
		mov ebx,ted_sel_x0
562
		mov ebx,ted_sel_x0
562
		cmp ebx,ted_sel_x1
563
		cmp ebx,ted_sel_x1
563
		jne @f
564
		jne @f
564
		mov ebx,ted_sel_y0
565
		mov ebx,ted_sel_y0
565
		cmp ebx,ted_sel_y1
566
		cmp ebx,ted_sel_y1
Line 575... Line 576...
575
proc ted_sel_normalize uses ecx esi
576
proc ted_sel_normalize uses ecx esi
576
	push edi
577
	push edi
577
		mov esi,edi
578
		mov esi,edi
578
		add esi,ted_offs_sel
579
		add esi,ted_offs_sel
579
		add edi,ted_offs_seln
580
		add edi,ted_offs_seln
580
		mov ecx,sizeof.TexSelect
581
		mov ecx,sizeof.TexSelect/4
581
		rep movsb
582
		rep movsd
582
	pop edi
583
	pop edi
Line 583... Line 584...
583
 
584
 
584
	jmp @f
585
	jmp @f
585
		.swp_f:
586
		.swp_f:
Line 748... Line 749...
748
	mov ted_help_id,-1 ;¨¤¥­â¨ä¨ª â®à á«®¢  ¤«ï á¯à ¢ª¨
749
	mov ted_help_id,-1 ;¨¤¥­â¨ä¨ª â®à á«®¢  ¤«ï á¯à ¢ª¨
Line 749... Line 750...
749
 
750
 
750
	mov eax,edi ;á®å࠭塞 §­ ç¥­¨¥ edi
751
	mov eax,edi ;á®å࠭塞 §­ ç¥­¨¥ edi
751
	mov esi,ted_syntax_file
752
	mov esi,ted_syntax_file
752
	add edi,ted_offs_count_colors
753
	add edi,ted_offs_count_colors
753
	mov ecx,9*4
754
	mov ecx,9
754
	rep movsb
755
	rep movsd
Line 755... Line 756...
755
	mov edi,eax ;¢®áâ ­ ¢«¨¢ ¥¬ §­ ç¥­¨¥ edi
756
	mov edi,eax ;¢®áâ ­ ¢«¨¢ ¥¬ §­ ç¥­¨¥ edi
756
 
757
 
757
	mov eax,ted_syntax_file
758
	mov eax,ted_syntax_file
Line 758... Line 759...
758
	add eax,32
759
	add eax,32
759
	mov ted_text_colors,eax
-
 
760
 
760
	mov ted_text_colors,eax
761
	mov eax,ted_colors_text_count ;init: count_colors_text (offset to key words)
761
 
762
	add eax,8
762
	mov eax,ted_colors_text_count ;init: count_colors_text (offset to key words)
Line 763... Line 763...
763
	shl eax,2
763
	lea eax,[4*eax+32]
764
	add eax,ted_syntax_file
764
	add eax,ted_syntax_file
765
	mov ted_key_words_data,eax
765
	mov ted_key_words_data,eax
766
 
766
 
767
	mov ecx,ted_key_words_count ;init: ted_arr_key_pos (first key positions)
-
 
768
	xor eax,eax
767
	mov ecx,ted_key_words_count ;init: ted_arr_key_pos (first key positions)
769
	@@:
-
 
770
		ColToIndexOffset eax,edx
768
	xor eax,eax
771
		xor ebx,ebx
769
	@@:
772
		mov bl,byte[edx]
770
		ColToIndexOffset eax,edx
773
		shl bx,2
771
		movzx ebx,byte[edx]
774
		mov esi,ted_arr_key_pos
772
		mov esi,ted_arr_key_pos
775
		add esi,ebx
773
		lea esi,[esi+4*ebx]
776
		cmp dword[esi],-1
774
		cmp dword[esi],-1
777
		jne .no_ch_key
775
		jne .no_ch_key
Line 778... Line 776...
778
			mov dword[esi],eax
776
			mov [esi],eax
Line 909... Line 907...
909
	cmp ted_tim_undo,0
907
	cmp ted_tim_undo,0
910
	je .else
908
	je .else
911
	push ebx
909
	push ebx
912
	@@:
910
	@@:
913
		mov edx,[edx+2]
911
		mov edx,[edx+2]
914
		cmp edx,0
912
		or edx,edx
915
		je @f
913
		jz @f
916
		imul edx,sizeof.symbol
914
		imul edx,sizeof.symbol
917
		add edx,ted_tex
915
		add edx,ted_tex
918
		call ted_symbol_not_vis
916
		call ted_symbol_not_vis
919
		cmp bl,1
917
		cmp bl,1
920
		je @b
918
		je @b
Line 926... Line 924...
926
	mov edx,ted_tex ;­ ç «® ä ©« 
924
	mov edx,ted_tex ;­ ç «® ä ©« 
927
	pop ebx
925
	pop ebx
928
	ret
926
	ret
929
	.else:
927
	.else:
930
		mov edx,[edx+2]
928
		mov edx,[edx+2]
931
		cmp edx,0
929
		or edx,edx
932
		je @f
930
		jz @f
933
		imul edx,sizeof.symbol
931
		imul edx,sizeof.symbol
934
		add edx,ted_tex
932
		add edx,ted_tex
935
		cmp dword [edx+14],0
933
		cmp dword [edx+14],0
936
		jne .else
934
		jne .else
937
		cmp byte[edx],10 ;¯à®¯ã᪠ᨬ¢®«  á ª®¤®¬ 10
935
		cmp byte[edx],10 ;¯à®¯ã᪠ᨬ¢®«  á ª®¤®¬ 10
Line 1078... Line 1076...
1078
 
1076
 
1079
	pop eax
1077
	pop eax
Line 1080... Line 1078...
1080
	ret
1078
	ret
1081
 
1079
 
1082
;input:
1080
;input:
1083
; text:dword - pointer to text string
1081
; text - pointer to text string
1084
; add_opt:dword - options
1082
; add_opt - options
1085
align 16
1083
align 16
1086
proc ted_text_add, edit:dword, text:dword, t_len:dword, add_opt:dword
1084
proc ted_text_add, edit:dword, text:dword, t_len:dword, add_opt:dword
1087
	locals
1085
	locals
Line 1351... Line 1349...
1351
  endl
1349
	endl
1352
  mov dword[conv_cou],0
1350
	mov dword[conv_cou],0
1353
  pushad
1351
	pushad
Line 1354... Line 1352...
1354
 
1352
 
1355
  call ted_is_select
1353
	call ted_is_select
1356
  cmp al,0
1354
	or al,al
1357
  je .end_f
1355
	jz .end_f
1358
    call ted_set_undo
1356
		call ted_set_undo
Line 1359... Line 1357...
1359
    call ted_sel_normalize
1357
		call ted_sel_normalize
1360
 
1358
 
Line 1390... Line 1388...
1390
 
1388
 
1391
      call ted_iterat_next
1389
		call ted_iterat_next
1392
      cmp edx,ted_tex
1390
		cmp edx,ted_tex
1393
      je @f 
1391
		je @f 
1394
      cmp edx,ebx
-
 
1395
      je @f
-
 
1396
 
1392
		cmp edx,ebx
1397
      jmp @b
1393
		jne @b
1398
    @@:
1394
		@@:
1399
    cmp dword[conv_cou],0
1395
		cmp dword[conv_cou],0
1400
    jne @f
1396
		jne @f
1401
      dec ted_tim_ch
1397
			dec ted_tim_ch
Line 1442... Line 1438...
1442
;description:
1438
;description:
1443
; ”ã­ªæ¨ï 㤠«ï¥â ¢ë¤¥«¥­­ë© ⥪áâ
1439
; ”ã­ªæ¨ï 㤠«ï¥â ¢ë¤¥«¥­­ë© ⥪áâ
1444
align 16
1440
align 16
1445
proc ted_sel_text_del uses ebx ecx edx esi, del_opt:dword
1441
proc ted_sel_text_del uses ebx ecx edx esi, del_opt:dword
1446
	call ted_is_select
1442
	call ted_is_select
1447
	cmp al,0
1443
	or al,al
1448
	je .end_f
1444
	jz .end_f
1449
		call ted_sel_normalize
1445
		call ted_sel_normalize
Line 1450... Line 1446...
1450
 
1446
 
1451
		mov esi,ted_seln_x1
1447
		mov esi,ted_seln_x1
1452
		mov ecx,ted_seln_y1
1448
		mov ecx,ted_seln_y1
Line 2056... Line 2052...
2056
 
2052
 
2057
;input:
2053
;input:
2058
; ecx = Col
2054
; ecx = Col
2059
; edx = Row
2055
; edx = Row
-
 
2056
; edi = pointer to tedit struct
-
 
2057
;output:
-
 
2058
; ecx = cursor x
2060
; edi = pointer to tedit struct
2059
; edx = cursor y
2061
align 16
2060
align 16
2062
ted_go_to_pos:
2061
ted_go_to_pos:
2063
	push eax
2062
	push eax ebx
-
 
2063
	mov eax,ted_scr_h
-
 
2064
	sub ecx,[eax+sb_offs_position]
-
 
2065
	cmp ecx,0 ;ted_cur_y < 0
-
 
2066
	jge @f
-
 
2067
		add [eax+sb_offs_position],ecx ;¯à®ªàã⪠ áªà®««¨­£  ¢«¥¢®
-
 
2068
		xor ecx,ecx
-
 
2069
	@@:
-
 
2070
	mov ebx,5 ;5 - ¦¥« ¥¬ë© ®âáâ㯠᫥¢ 
-
 
2071
	cmp ecx,ebx
-
 
2072
	jge .end0
-
 
2073
		sub ebx,ecx ;ebx - ­  ᪮«ìª® ᨬ¢®«®¢ ­ã¦­® ᤢ¨­ãâì ªãàá®à
-
 
2074
		cmp [eax+sb_offs_position],ebx
-
 
2075
		jge @f 
-
 
2076
			add ecx,[eax+sb_offs_position]
-
 
2077
			mov dword[eax+sb_offs_position],0
-
 
2078
			jmp .end0
-
 
2079
		@@:
-
 
2080
			sub [eax+sb_offs_position],ebx
-
 
2081
			add ecx,ebx
-
 
2082
	.end0:
-
 
2083
	cmp ecx,[eax+sb_offs_cur_area] ;ted_cur_x > [.cur_area]
-
 
2084
	jl .end1
-
 
2085
		mov ebx,ecx
-
 
2086
		sub ebx,[eax+sb_offs_cur_area]
-
 
2087
		inc ebx
-
 
2088
		add [eax+sb_offs_position],ebx ;¯à®ªàã⪠ áªà®««¨­£  ¢¯à ¢®
-
 
2089
		sub ecx,ebx
2064
	mov eax,ted_scr_w
2090
	.end1:
2065
	mov ted_cur_x,ecx
-
 
Line -... Line 2091...
-
 
2091
	mov ted_cur_x,ecx
-
 
2092
 
-
 
2093
	mov eax,ted_scr_w
-
 
2094
	sub edx,[eax+sb_offs_position]
-
 
2095
	cmp edx,0 ;ted_cur_y < 0
-
 
2096
	jge @f
-
 
2097
		add [eax+sb_offs_position],edx ;¯à®ªàã⪠ áªà®««¨­£  ¢¢¥àå
-
 
2098
		xor edx,edx
2066
	sub edx,[eax+sb_offs_position]
2099
		jmp .end2
2067
 
2100
	@@:
2068
	cmp edx,[eax+sb_offs_cur_area] ;ted_cur_y > [.cur_area]
-
 
2069
	jl @f
2101
	cmp edx,[eax+sb_offs_cur_area] ;ted_cur_y > [.cur_area]
2070
		push ebx
2102
	jl .end2
2071
		mov ebx,edx
2103
		mov ebx,edx
2072
		sub ebx,[eax+sb_offs_cur_area]
2104
		sub ebx,[eax+sb_offs_cur_area]
2073
		inc ebx
2105
		inc ebx
2074
		add [eax+sb_offs_position],ebx
-
 
2075
		sub edx,ebx
-
 
2076
		pop ebx
2106
		add [eax+sb_offs_position],ebx ;¯à®ªàã⪠ áªà®««¨­£  ¢­¨§
2077
		; ??? redrav
2107
		sub edx,ebx
2078
	@@:
2108
	.end2:
2079
	mov ted_cur_y,edx
2109
	mov ted_cur_y,edx
Line 2080... Line 2110...
2080
	pop eax
2110
	pop ebx eax
2081
	ret
2111
	ret
2082
 
2112
 
Line 2803... Line 2833...
2803
			call ted_fun_draw_panel_buttons
2833
			call ted_fun_draw_panel_buttons
2804
	@@:
2834
	@@:
2805
	ret
2835
	ret
2806
endp
2836
endp
Line -... Line 2837...
-
 
2837
 
-
 
2838
;description:
-
 
2839
; äã­ªæ¨ï ­ å®¤¨â ⥪áâ ­  ª®â®àë© ãª §ë¢ ¥â ted_buffer_find
-
 
2840
;input:
-
 
2841
; f_opt = ¯ à ¬¥âàë ¯®¨áª :
-
 
2842
;   (0 - ¨áª âì ¢ëè¥ ªãàá®à , 1 - ¨áª âì ­¨¦¥ ªãàá®à , 2 - ¨áª âì ®â ­ ç «  ä ©« )
-
 
2843
align 16
-
 
2844
proc ted_but_find, edit:dword, f_opt:dword
-
 
2845
	push [edit]
-
 
2846
	cmp dword[f_opt],2
-
 
2847
	jne @f
-
 
2848
		call ted_but_find_first
-
 
2849
		jmp .end_f
-
 
2850
	@@:
-
 
2851
	cmp dword[f_opt],0
-
 
2852
	jne @f
-
 
2853
		call ted_but_find_next
-
 
2854
		jmp .end_f
-
 
2855
	@@:
-
 
2856
	cmp dword[f_opt],1
-
 
2857
	jne .end_f
-
 
2858
		call ted_but_find_perv
-
 
2859
	.end_f:
-
 
2860
	ret
-
 
2861
endp
-
 
2862
 
-
 
2863
;description:
-
 
2864
; äã­ªæ¨ï ­ å®¤¨â ⥪áâ ­  ª®â®àë© ãª §ë¢ ¥â ted_buffer_find
-
 
2865
; ¨é¥â ®â ­ ç «  ä ©« , ¨«¨ ®â ª®­æ  ⥪ã饣® ¢ë¤¥«¥­¨ï
-
 
2866
align 16
-
 
2867
proc ted_but_find_first, edit:dword
-
 
2868
	pushad
-
 
2869
	mov edi,[edit]
-
 
2870
 
-
 
2871
	call ted_is_select
-
 
2872
	or al,al
-
 
2873
	jz @f
-
 
2874
		call ted_sel_normalize
-
 
2875
		mov edx,ted_sel_y1
-
 
2876
		mov ecx,ted_sel_x1
-
 
2877
		call ted_go_to_pos ;¯¥à¥å®¤ ­  ª®­¥æ ¢ë¤¥«¥­¨ï
-
 
2878
		call ted_get_pos_by_cursor
-
 
2879
		jmp .end0
-
 
2880
	@@:
-
 
2881
		mov edx,ted_tex
-
 
2882
		call ted_iterat_next
-
 
2883
	.end0:
-
 
2884
	mov eax,ted_buffer_find
-
 
2885
	mov bl,byte[eax]
-
 
2886
	@@:
-
 
2887
		call ted_get_find_rezult
-
 
2888
		cmp bh,1
-
 
2889
		je @f ; find
-
 
2890
			call ted_iterat_next
-
 
2891
			cmp edx,ted_tex_1
-
 
2892
			jle @f
-
 
2893
			jmp @b
-
 
2894
	@@:
-
 
2895
	call but_find
-
 
2896
	popad
-
 
2897
	ret
-
 
2898
endp
-
 
2899
 
-
 
2900
;description:
-
 
2901
; äã­ªæ¨ï ­ å®¤¨â ⥪áâ ­  ª®â®àë© ãª §ë¢ ¥â ted_buffer_find
-
 
2902
; ¨é¥â ¢ëè¥ ªãàá®à 
-
 
2903
align 16
-
 
2904
proc ted_but_find_perv, edit:dword
-
 
2905
	pushad
-
 
2906
	mov edi,[edit]
-
 
2907
	call ted_is_select
-
 
2908
	or al,al
-
 
2909
	jz @f
-
 
2910
		call ted_sel_normalize
-
 
2911
		mov edx,ted_sel_y0
-
 
2912
		mov ecx,ted_sel_x0
-
 
2913
		call ted_go_to_pos ;¯¥à¥å®¤ ­  ­ ç «® ¢ë¤¥«¥­¨ï
-
 
2914
		call ted_get_pos_by_cursor
-
 
2915
		call ted_iterat_perv ;¯¥à¥å®¤ ­  1-© ᨬ¢®« ¯¥à¥¤ ¢ë¤¥«¥­¨¥¬
-
 
2916
		jmp .end0
-
 
2917
	@@:
-
 
2918
	call ted_get_pos_by_cursor
-
 
2919
	.end0:
-
 
2920
	mov eax,ted_buffer_find
-
 
2921
	mov bl,byte[eax]
-
 
2922
	@@:
-
 
2923
		call ted_get_find_rezult
-
 
2924
		cmp bh,1
-
 
2925
		je @f ; find
-
 
2926
			call ted_iterat_perv
-
 
2927
			cmp edx,ted_tex_1
-
 
2928
			jle @f
-
 
2929
			jmp @b
-
 
2930
	@@:
-
 
2931
	call but_find
-
 
2932
	popad
-
 
2933
	ret
-
 
2934
endp
-
 
2935
 
-
 
2936
;description:
-
 
2937
; äã­ªæ¨ï ­ å®¤¨â ⥪áâ ­  ª®â®àë© ãª §ë¢ ¥â ted_buffer_find
2807
 
2938
; ¨é¥â ­¨¦¥ ªãàá®à 
2808
align 16
2939
align 16
2809
proc ted_but_find_next, edit:dword
2940
proc ted_but_find_next, edit:dword
2810
	pushad
2941
	pushad
Line 2820... Line 2951...
2820
			call ted_iterat_next
2951
			call ted_iterat_next
2821
			cmp edx,ted_tex_1
2952
			cmp edx,ted_tex_1
2822
			jle @f
2953
			jle @f
2823
			jmp @b
2954
			jmp @b
2824
	@@:
2955
	@@:
-
 
2956
	call but_find
-
 
2957
	popad
-
 
2958
	ret
-
 
2959
endp
-
 
2960
 
-
 
2961
;input:
-
 
2962
; bh = ¡ë« «¨ ­ ©¤¥­ ¨áª®¬ë© ⥪áâ (0 - ­¥â, 1 - ¤ )
-
 
2963
; esi = first symbol pointer
-
 
2964
align 16
-
 
2965
but_find:
2825
	cmp bh,0
2966
	or bh,bh
2826
	je @f
2967
	jz @f
2827
		call ted_get_text_coords
2968
		call ted_get_text_coords
2828
		inc ebx ;move cursor right
2969
		inc ebx ;move cursor right
2829
		mov ted_sel_x1,ebx
2970
		mov ted_sel_x1,ebx
2830
		mov ted_sel_y1,eax
2971
		mov ted_sel_y1,eax
2831
		mov edx,eax
2972
		mov edx,eax
2832
		mov ecx,ebx
2973
		mov ecx,ebx
2833
		call ted_go_to_pos
2974
		call ted_go_to_pos
2834
		mov edx,esi ;esi ¡ë«® ãáâ ­®¢«¥® ¢ ted_get_find_rezult
2975
		mov edx,esi
2835
		call ted_get_text_coords
2976
		call ted_get_text_coords
2836
		mov ted_sel_x0,ebx
2977
		mov ted_sel_x0,ebx
2837
		mov ted_sel_y0,eax
2978
		mov ted_sel_y0,eax
2838
		stdcall ted_draw,edi
2979
		stdcall ted_draw,edi
2839
		jmp .end_find
2980
		jmp .end_find
Line 2841... Line 2982...
2841
		;¯®¯ ¤ ¥¬ á ¥á«¨ ⥪áâ ­¥ ­ ©¤¥­
2982
		;¯®¯ ¤ ¥¬ á ¥á«¨ ⥪áâ ­¥ ­ ©¤¥­
2842
		cmp ted_fun_find_err,0
2983
		cmp ted_fun_find_err,0
2843
		je .end_find
2984
		je .end_find
2844
			call ted_fun_find_err ;¯®«ì§®¢ â¥«ì᪠ï äã­ªæ¨ï
2985
			call ted_fun_find_err ;¯®«ì§®¢ â¥«ì᪠ï äã­ªæ¨ï
2845
	.end_find:
2986
	.end_find:
-
 
2987
	ret
-
 
2988
 
-
 
2989
;input:
-
 
2990
; rpl_text = ⥪áâ ¤«ï § ¬¥­ë
-
 
2991
; r_opt = ¯ à ¬¥âàë ¯®¨áª :
-
 
2992
;   (0 - ¨áª âì ¢ëè¥ ªãàá®à , 1 - ¨áª âì ­¨¦¥ ªãàá®à , 2 - ¨áª âì ®â ­ ç «  ä ©« )
-
 
2993
; n_tim = 䨪á¨à®¢ âì § ¬¥­ã ¢ ¨§¬¥­¥­¨ïå (0 - ­¥â, 1 - ¤ )
-
 
2994
;output:
-
 
2995
; eax = 0 - ­¥ 㤠筮, 1 - 㤠筮
-
 
2996
align 16
-
 
2997
proc ted_but_replace uses edx edi esi, edit:dword, rpl_text:dword, r_opt:dword, n_tim:dword
-
 
2998
	mov edi,[edit]
-
 
2999
	stdcall ted_but_find, edi,[r_opt]
-
 
3000
 
-
 
3001
	xor edx,edx
-
 
3002
	cmp dword[n_tim],0
2846
	popad
3003
	je @f
-
 
3004
		mov edx,ted_opt_ed_change_time
-
 
3005
	@@:
-
 
3006
	stdcall ted_sel_text_del, edx
-
 
3007
	or eax,0xff
-
 
3008
	jz @f
-
 
3009
		mov esi,[rpl_text]
-
 
3010
		stdcall tl_strlen
-
 
3011
		or eax,eax
-
 
3012
		jz @f
-
 
3013
		stdcall ted_text_add, edi,esi,eax,ted_opt_ed_move_cursor
-
 
3014
		xor eax,eax
-
 
3015
		inc eax
-
 
3016
	@@:
2847
	ret
3017
	ret
2848
endp
3018
endp
Line 2849... Line 3019...
2849
 
3019
 
2850
;input:
3020
;input:
Line 3750... Line 3920...
3750
		mov cx,ax
3920
		mov cx,ax
3751
		jmp .no_select ;¥á«¨ ®ç¨á⪠ ®ª­  ¤® ­¨§ã, â® ¢á¥£¤  ä®­®¢ë¬ 梥⮬
3921
		jmp .no_select ;¥á«¨ ®ç¨á⪠ ®ª­  ¤® ­¨§ã, â® ¢á¥£¤  ä®­®¢ë¬ 梥⮬
3752
	@@:
3922
	@@:
Line 3753... Line 3923...
3753
 
3923
 
3754
	call ted_is_select
3924
	call ted_is_select
3755
	cmp al,0
3925
	or al,al
3756
	je .no_select
3926
	jz .no_select
3757
	cmp ted_seln_y0,esi
3927
	cmp ted_seln_y0,esi
3758
	jg .no_select
3928
	jg .no_select
3759
	cmp ted_seln_y1,esi
3929
	cmp ted_seln_y1,esi
3760
	jl .no_select
3930
	jl .no_select