Subversion Repositories Kolibri OS

Rev

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

Rev 1390 Rev 1449
Line 6... Line 6...
6
  param4 dd ?
6
  param4 dd ?
7
  rezerv db ?
7
  rezerv db ?
8
  name dd ?
8
  name dd ?
9
ends
9
ends
Line 10... Line -...
10
 
-
 
11
struct TexSelect
-
 
12
  x0 dd ?
-
 
13
  y0 dd ?
-
 
14
  x1 dd ?
-
 
15
  y1 dd ?
-
 
16
ends
-
 
17
 
10
 
18
struct TexColViv
11
struct TexColViv
19
  Text rb MAX_COLOR_WORD_LEN; // ñëîâî
12
  Text rb MAX_COLOR_WORD_LEN; // ñëîâî
20
  f1 dd 0
13
  f1 dd 0
21
  wwo db ? ; whole words only
14
  wwo db ? ; whole words only
Line 50... Line 43...
50
FkPos: rd 256
43
FkPos: rd 256
51
Col dd 0 ;óêàçàòåëü íà ñòðóêòóðû êëþ÷åâûõ ñëîâ TexColViv
44
Col dd 0 ;óêàçàòåëü íà ñòðóêòóðû êëþ÷åâûõ ñëîâ TexColViv
Line 52... Line 45...
52
 
45
 
53
conv_tabl rb 128 ; òàáëèöà äëÿ êîíâåðòèðîâàíèÿ scan-êîäà â ascii-êîä
46
conv_tabl rb 128 ; òàáëèöà äëÿ êîíâåðòèðîâàíèÿ scan-êîäà â ascii-êîä
54
keyUpr dd 0
-
 
-
 
47
keyUpr dd 0
55
err_opn db 0 ;îøèáêà îòêðûòèÿ ôàéëà
48
 
56
err_sav db 0 ;îøèáêà ñîõðàíåíèÿ ôàéëà
49
err_sav db 0 ;îøèáêà ñîõðàíåíèÿ ôàéëà
Line 57... Line 50...
57
panel_id db 0 ;íîìåð îòêðûòîé ïàíåëè
50
panel_id db 0 ;íîìåð îòêðûòîé ïàíåëè
58
 
51
 
Line 66... Line 59...
66
key_new db 0 ; ñèìâîë, êîòîðûé áóäåò äîáàâëÿòñÿ ñ êëàâèàòóðû
59
key_new db 0 ; ñèìâîë, êîòîðûé áóäåò äîáàâëÿòñÿ ñ êëàâèàòóðû
67
tex	dd 0 ;text memory pointer
60
tex	dd 0 ;text memory pointer
68
tex_1	dd 0 ;text first symbol pointer
61
tex_1	dd 0 ;text first symbol pointer
69
tex_end dd 0 ;text end memory pointer
62
tex_end dd 0 ;text end memory pointer
Line 70... Line -...
70
 
-
 
71
hed db 'TextEditor 05.02.10',0 ;ïîäïèñü îêíà
-
 
72
sc system_colors
-
 
73
 
-
 
74
wndMain BOX 0,50,440,150
-
 
75
recMain BOX 30,23,7,10
-
 
76
 
63
 
77
curMod db 1
64
curMod db 1
78
cur_x dd 0
65
cur_x dd 0
79
cur_y dd 0
66
cur_y dd 0
80
invis db 0 ;ðåæèì ïîêàçà íåïå÷àòàåìûõ ñèìâîëîâ
67
invis db 0 ;ðåæèì ïîêàçà íåïå÷àòàåìûõ ñèìâîëîâ
81
symbol_new_line db 20 ;ñèìâîë çàâåðøåíèÿ ñòðîêè
-
 
82
dragm db 0 ;âûäåëåíèå îò ìûøè
-
 
83
dragk db 0 ;âûäåëåíèå îò êëàâèàòóðû
-
 
84
sel TexSelect 0,0,0,0 ;ñòðóêòóðà âûäåëåíèÿ
-
 
85
seln TexSelect ;äîïîëíèòåëüíàÿ ñòðóêòóðà âûäåëåíèÿ
68
symbol_new_line db 20 ;ñèìâîë çàâåðøåíèÿ ñòðîêè
Line -... Line 69...
-
 
69
help_id dd -1  ;èäåíòèôèêàòîð äëÿ ñïðàâêè
-
 
70
 
-
 
71
hed db 'TextEditor 15.04.10',0 ;ïîäïèñü îêíà
86
help_id dd -1  ;èäåíòèôèêàòîð äëÿ ñïðàâêè
72
sc system_colors
87
 
73
 
88
fn_icon db 'te_icon.bmp',0
74
fn_icon db 'te_icon.bmp',0
Line 115... Line 101...
115
  ret
101
  ret
Line 116... Line 102...
116
 
102
 
117
 
103
 
118
;output:
104
;output:
119
; al = 1 - selected
105
; al = 1 - selected
-
 
106
proc IsSel, edit:dword
120
IsSel:
107
  push ebx edi
121
  push ebx
108
  mov edi,dword[edit]
122
  xor al,al
109
  xor al,al
123
  cmp [dragm],1
110
  cmp ted_drag_m,1
124
  je @f
111
  je @f
125
    mov al,1
112
    mov al,1
126
    mov ebx,[sel.x0]
113
    mov ebx,[sel.x0]
127
    cmp ebx,[sel.x1]
114
    cmp ebx,[sel.x1]
128
    jne @f
115
    jne @f
129
    mov ebx,[sel.y0]
116
    mov ebx,[sel.y0]
130
    cmp ebx,[sel.y1]
117
    cmp ebx,[sel.y1]
131
    jne @f
118
    jne @f
132
    xor al,al
119
    xor al,al
133
  @@:
120
  @@:
-
 
121
  pop edi ebx
Line 134... Line 122...
134
  pop ebx
122
  ret
135
  ret
123
endp
136
 
124
 
137
SelNormalize:
125
SelNormalize:
Line 341... Line 329...
341
 
329
 
342
 
330
 
343
;input:
331
;input:
344
; ebx = file size
-
 
345
OpenFile:
332
; ebx = file size
346
  mov [err_opn],0
333
OpenFile:
347
  push eax ;destination
334
  push eax ;destination
Line 348... Line 335...
348
  push ecx ;for cycle
335
  push ecx ;for cycle
Line 727... Line 714...
727
;output:
714
;output:
728
; edi = count converted symbols
715
; edi = count converted symbols
729
ConvertSelText:
716
ConvertSelText:
730
  xor edi,edi
717
  xor edi,edi
731
  push eax ebx ecx edx esi
718
  push eax ebx ecx edx esi
732
  call IsSel
719
  stdcall IsSel, tedit0
733
  cmp al,0
720
  cmp al,0
734
  je .end_f
721
  je .end_f
735
    call SetUndo
722
    call SetUndo
736
    call SelNormalize
723
    call SelNormalize
Line 1327... Line 1314...
1327
;input:
1314
;input:
1328
; bl = 1 change time when delete text
1315
; bl = 1 change time when delete text
1329
;output:
1316
;output:
1330
; al = 1 if delete
1317
; al = 1 if delete
1331
SelTextDel:
1318
SelTextDel:
1332
  call IsSel
1319
  stdcall IsSel, tedit0
1333
  cmp al,0
1320
  cmp al,0
1334
  jne @f
1321
  jne @f
1335
  ret
1322
  ret
1336
  @@:
1323
  @@:
1337
  ;call SelEnd
1324
  ;call SelEnd
Line 1662... Line 1649...
1662
  cmp edx,[tex_1]
1649
  cmp edx,[tex_1]
1663
  jle @f
1650
  jle @f
1664
    call FindHelpId
1651
    call FindHelpId
1665
  @@:
1652
  @@:
1666
  pop edx eax
1653
  pop edx eax
1667
  ;call draw_main_cursor
1654
  ;stdcall draw_main_cursor, tedit0
1668
  call draw_help_f1
1655
  stdcall draw_help_f1, tedit0
1669
  ret 
1656
  ret 
Line 1670... Line 1657...
1670
 
1657
 
1671
;input:
1658
;input:
1672
; edx = position begin 'symbol' struct
1659
; edx = position begin 'symbol' struct