Subversion Repositories Kolibri OS

Rev

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

Rev 507 Rev 583
Line 29... Line 29...
29
@@:     mov     eax,4
29
@@:     mov     eax,4
30
        mov     ebx,ed_left
30
        mov     ebx,ed_left
31
        mov     edx,ed_offset
31
        mov     edx,ed_offset
32
        add     ebx,2
32
        add     ebx,2
33
        shl     ebx,16
33
        shl     ebx,16
34
        mov     bx,ed_top
34
        add     ebx,ed_top
35
        add     ebx,4
-
 
36
        mov     ecx,ed_text_color
35
        mov     ecx,ed_text_color
-
 
36
        add     ebx,4
37
        add     edx,ed_text
37
        add     edx,ed_text
38
        mcall
38
        mcall
39
ret
39
ret
40
;----------------------------------------------------------
40
;----------------------------------------------------------
41
;--- ¯à®æ¥¤ãà  ¯à®à¨á®¢ª¨ ä®­  ----------------------------
41
;--- ¯à®æ¥¤ãà  ¯à®à¨á®¢ª¨ ä®­  ----------------------------
Line 45... Line 45...
45
;----------------------------------------------------------
45
;----------------------------------------------------------
46
;¢å®¤ ⮫쪮 梥â edx
46
;¢å®¤ ⮫쪮 梥â edx
47
.draw_bg:
47
.draw_bg:
48
        mov     ebx,ed_left
48
        mov     ebx,ed_left
49
        add     ebx,1
49
        add     ebx,1
-
 
50
        mov     edx,ed_color
50
        shl     ebx,16
51
        shl     ebx,16
51
        mov     bx,ed_width
52
        add     ebx,ed_width
52
        sub     ebx,1
53
        sub     ebx,1
53
        mov     edx,ed_color
-
 
54
.draw_bg_eax:
54
.draw_bg_eax:
55
        mov     ecx,ed_top
55
        mov     ecx,ed_top
56
        mov     eax,13
56
        mov     eax,13
57
        add     ecx,1
57
        add     ecx,1
58
        shl     ecx,16
58
        shl     ecx,16
59
        mov     cx,ed_height
59
        add     ecx,ed_height
60
        dec     ecx
60
        dec     ecx
61
        mcall   
61
        mcall   
62
ret
62
ret
63
 
-
 
64
;----------------------------------------------------------
63
;----------------------------------------------------------
65
;--- ¯à®æ¥¤ãà  ¯®«ã祭¨ï ª®«¨ç¥á⢠ ᨬ¢®«®¢ ¢ ⥪ã饩 é¨à¨­¥ ª®¬¯®­¥­â 
64
;--- ¯à®æ¥¤ãà  ¯®«ã祭¨ï ª®«¨ç¥á⢠ ᨬ¢®«®¢ ¢ ⥪ã饩 é¨à¨­¥ ª®¬¯®­¥­â 
66
;----------------------------------------------------------
65
;----------------------------------------------------------
67
.get_n:
66
.get_n:
68
        mov     eax,ed_width    ;¯®«ã祬 è¨à¨­ã ª®¬¯®­¥­â 
67
        mov     eax,ed_width    ;¯®«ã祬 è¨à¨­ã ª®¬¯®­¥­â 
Line 87... Line 86...
87
        sub     ebx,ecx
86
        sub     ebx,ecx
Line 88... Line 87...
88
 
87
 
89
        lea     ebx,[ebx*2+ebx]
88
        lea     ebx,[ebx*2+ebx]
90
        shl     ebx,1
89
        shl     ebx,1
91
        ;imul   ebx,6
90
        ;imul   ebx,6
92
        add     bx,ed_left
91
        add     ebx,ed_left
93
        mov     ecx,ed_top
92
        mov     ecx,ed_top
94
        inc     ebx
93
        inc     ebx
95
        add     ecx,2
94
        add     ecx,2
96
        mov     ebp,ebx
95
        mov     ebp,ebx
97
        shl     ebx,16
96
        shl     ebx,16
98
        mov     bx,bp
97
        mov     bx,bp
Line 99... Line 98...
99
        mov     ebp,ecx
98
        mov     ebp,ecx
100
        
99
        
101
        shl     ecx,16
100
        shl     ecx,16
Line 102... Line 101...
102
        mov     cx,bp
101
        mov     cx,bp
103
        add     cx,ed_height-4
102
        add     ecx,ed_height-4
104
        
103
        
105
        mov     cl_curs_x,ebx
104
        mov     cl_curs_x,ebx
Line 121... Line 120...
121
        mov     eax,38
120
        mov     eax,38
122
        mov     ebx,ed_left
121
        mov     ebx,ed_left
123
        mov     ecx,ebx
122
        mov     ecx,ebx
124
        shl     ebx,16
123
        shl     ebx,16
125
        mov     bx,cx
124
        mov     bx,cx
126
        add     bx,ed_width
125
        add     ebx,ed_width
127
        mov     ecx, ed_top
126
        mov     ecx,ed_top
128
        mov     esi,ecx
127
        mov     esi,ecx
129
        shl     ecx,16
128
        shl     ecx,16
130
        mov     cx,si
129
        mov     cx,si
131
        mcall
130
        mcall
Line 137... Line 136...
137
        mov     cx,bp
136
        mov     cx,bp
138
        mcall
137
        mcall
139
;--- á«¥¢  ---
138
;--- á«¥¢  ---
140
        mov     cx,si
139
        mov     cx,si
141
        mov     ebp,ebx
140
        mov     ebp,ebx
142
        sub     bx,ed_width
141
        sub     ebx,ed_width
143
        mcall
142
        mcall
144
;--- á¯à ¢  ---
143
;--- á¯à ¢  ---
145
        mov     ebx,ebp
144
        mov     ebx,ebp
146
        shl     ebx,16
145
        shl     ebx,16
147
        mov     bx,bp
146
        mov     bx,bp
Line 532... Line 531...
532
        lea     ebx,[eax*2+eax]
531
        lea     ebx,[eax*2+eax]
533
        shl     ebx,1
532
        shl     ebx,1
534
        inc     ebx
533
        inc     ebx
535
        add     ebx,ed_left
534
        add     ebx,ed_left
536
        shl     ebx,16
535
        shl     ebx,16
537
        mov     bx,6
536
        add     ebx,6
538
        mov     edx,ebp
537
        mov     edx,ebp
539
        call    .draw_bg_eax
538
        call    .draw_bg_eax
540
        ret
539
        ret
541
;;;;;;;;;;;;;;;;;;
540
;;;;;;;;;;;;;;;;;;
542
;;à®¢¥àª  ­ ¦ â «¨ shift
541
;;à®¢¥àª  ­ ¦ â «¨ shift
Line 625... Line 624...
625
        push    eax
624
        push    eax
626
        mov     edx,ed_size
625
        mov     edx,ed_size
627
        mov     ecx,ed_pos
626
        mov     ecx, ed_pos
628
        pusha
627
        pusha
629
;;;;;;;;;;;;;;;;;;;;;
628
;;;;;;;;;;;;;;;;;;;;;
-
 
629
;clear input arrea
630
        mov     ebp,ed_color
630
        mov     ebp,ed_color
631
        mov     ebx,dword       ed_shift_pos
631
        mov     ebx,dword       ed_shift_pos
632
        call    .sh_cl_
632
        call    .sh_cl_
-
 
633
        mov     ebp,ed_size
-
 
634
        call    .clear_bg
633
;;;;;;;;;;;;;;;;;;;;;
635
;;;;;;;;;;;;;;;;;;;;;
634
        popa 
636
        popa 
635
        call    .del_char
637
        call    .del_char
636
;;;;
638
;;;;
637
        mov     eax,dword ed_shift_pos
639
        mov     eax,dword ed_shift_pos
Line 1074... Line 1076...
1074
        or al,0x30  ;¤ ­­ ï ª®¬ ­¤  ª®à®ç¥  祬 ¤¢¥ ¢ëè¥ 
1076
        or al,0x30  ;¤ ­­ ï ª®¬ ­¤  ª®à®ç¥  祬 ¤¢¥ ¢ëè¥ 
1075
        stosb       ;§ ¯¨á âì í«¥¬¥­â ¨§ ॣ¨áâà  al ¢ ï祪㠯 ¬ï⨠es:edi
1077
        stosb       ;§ ¯¨á âì í«¥¬¥­â ¨§ ॣ¨áâà  al ¢ ï祪㠯 ¬ï⨠es:edi
Line 1076... Line 1078...
1076
 
1078
 
1077
        ret         ;¢¥à­ãâìáï ç¥­ì ¨­â¥à¥á­ë© 室 â.ª. ¯®ª  ¢ á⥪¥ åà ­¨âìáï ª®«-¢® ¢ë§®¢®¢ â® á⮫쪮 à § ¬ë ¨ ¡ã¤¥¬ ¢ë§ë¢ âìáï
1079
        ret         ;¢¥à­ãâìáï ç¥­ì ¨­â¥à¥á­ë© 室 â.ª. ¯®ª  ¢ á⥪¥ åà ­¨âìáï ª®«-¢® ¢ë§®¢®¢ â® á⮫쪮 à § ¬ë ¨ ¡ã¤¥¬ ¢ë§ë¢ âìáï
1078
}
1080
}
-
 
1081
 
-
 
1082
;;;;;;;;;;;;;;;
-
 
1083
;For LibGui
-
 
1084
;;;;;;;;;;;;;;;
-
 
1085
macro srt_ed_libgui
-
 
1086
{
-
 
1087
ed_width        equ [EditBox.ed_width]            ;è¨à¨­  ª®¬¯®­¥­â 
-
 
1088
ed_left         equ [EditBox.ed_left]             ;¯®«®¦¥­¨¥ ¯® ®á¨ å
-
 
1089
ed_top          equ [EditBox.ed_top]              ;¯®«®¦¥­¨¥ ¯® ®á¨ ã
-
 
1090
ed_color        equ [EditBox.ed_color]            ;梥â ä®­  ª®¬¯®­¥­â 
-
 
1091
shift_color     equ [EditBox.shift_color]         ;=0x6a9480
-
 
1092
ed_focus_border_color   equ [EditBox.ed_focus_border_color]   ;梥â à ¬ª¨ ª®¬¯®­¥­â 
-
 
1093
ed_blur_border_color    equ [EditBox.ed_blur_border_color]    ;梥⠭¥  ªâ¨¢­®£® ª®¬¯®­¥­â 
-
 
1094
ed_text_color   equ [EditBox.ed_text_color]       ;梥â ⥪áâ 
-
 
1095
ed_max          equ [EditBox.ed_max]              ;ª®«-¢® ᨬ¢®«®¢ ª®â®àë¥ ¬®¦­® ¬ ªá¨¬ «ì­® ¢¢¥áâ¨
-
 
1096
ed_text         equ [EditBox.ed_text]             ;㪠§ â¥«ì ­  ¡ãä¥à
-
 
1097
ed_flags        equ [EditBox.ed_flags]            ;ä« £¨
-
 
1098
ed_size equ [EditBox.ed_size]                     ;ª®«-¢® ᨬ¢®«®¢
-
 
1099
ed_pos  equ [EditBox.ed_poz]                      ;¯®§¨æ¨ï ªãàá®à 
-
 
1100
ed_offset       equ [EditBox.ed_offset]           ;ᬥ饭¨¥
-
 
1101
cl_curs_x       equ [EditBox.cl_curs_x]           ;¯à¥¤ë¤ã饥 ª®®à¤¨­ â  ªãàá®à  ¯® å
-
 
1102
cl_curs_y       equ [EditBox.cl_curs_y]           ;¯à¥¤ë¤ã饥 ª®®à¤¨­ â  ªãàá®à  ¯® ã
-
 
1103
ed_shift_pos    equ [EditBox.ed_shift_pos]        ;¯®«®¦¥­¨¥ ªãàá®à 
-
 
1104
ed_shift_pos_old equ [EditBox.ed_shift_pos_old]   ;áâ à®¥ ¯®«®¦¥­¨¥ ªãàá®à 
-
 
1105
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
 
1106
;Bit mask from editbox 
-
 
1107
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
 
1108
ed_figure_only= 1000000000000000b   ;®¤­¨ ᨬ¢®«ë 
-
 
1109
ed_always_focus= 100000000000000b
-
 
1110
ed_focus=                     10b   ;䮪ãá ¯à¨«®¦¥­¨ï
-
 
1111
ed_shift_on=                1000b   ;¥á«¨ ­¥ ãáâ ­®¢«¥­ -§­ ç¨â ¢¯¥à¢ë¥ ­ ¦ â shift,¥á«¨ ¡ë« ãáâ ­®¢«¥­, §­ ç¨â ¬ë 㦥 çâ® - â® ¤¥« «¨ 㤥ন¢ ï shift
-
 
1112
ed_shift_on_off=1111111111110111b
-
 
1113
ed_shift=                    100b   ;¢ª«îç ¥âáï ¯à¨ ­ ¦ â¨¨ ­  shift â.¥. ¥á«¨ ­ ¦¨¬ î
-
 
1114
ed_shift_off=   1111111111111011b
-
 
1115
ed_shift_bac=              10000b   ;¡¨â ¤«ï ®ç¨á⪨ ¢ë¤¥«¥­®£® shift â.¥. ¯à¨ ãáâ ­®¢ª¥ £®¢®à¨â çâ® ¥áâì ¢ë¤¥«¥­¨¥
-
 
1116
ed_shift_bac_cl=1111111111101111b   ;®ç¨á⪠ ¯à¨ 㤠«¥­¨¨ ¢ë¤¥«¥­¨ï
-
 
1117
ed_shift_cl=    1111111111100011b
-
 
1118
ed_shift_mcl=   1111111111111011b
-
 
1119
ed_left_fl=               100000b
-
 
1120
ed_right_fl=    1111111111011111b
-
 
1121
ed_offset_fl=            1000000b
-
 
1122
ed_offset_cl=   1111111110111111b
-
 
1123
ed_insert=              10000000b
-
 
1124
ed_insert_cl=   1111111101111111b
-
 
1125
ed_mouse_on =          100000000b
-
 
1126
ed_mous_adn_b=         100011000b
-
 
1127
ed_mouse_on_off=1111111011111111b
-
 
1128
ed_height=14 ; ¢ëá®â 
-
 
1129
}
1079
1130