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 |