Subversion Repositories Kolibri OS

Rev

Rev 1449 | Rev 1457 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1338 IgorA 1
;---  фрээ√х яЁюуЁрьь√  ----------------------------------------------
2
fn_col_option dd def_col_file
3
fn_syntax_dir db 'info/',0
4
def_col_file db 'default.syn',0
5
 
6
system_dir0 db '/sys/lib/'
7
boxlib_name db 'box_lib.obj',0
8
 
9
system_dir1 db '/sys/lib/'
10
msgbox_name db 'msgbox.obj',0
11
 
12
fn_icon_tl_sys db 'tl_sys_16.bmp',0
13
fn_icon_tl_nod db 'tl_nod_16.bmp',0
14
;---------------------------------------------------------------------
15
fileinfo:
16
  dd 5
17
  dd 0
18
  dd 0
19
  dd 0
20
  dd file_info
21
string:
22
  db 0
23
  dd file_name
24
 
25
;plugin dd 0
26
 
27
;---------------------------------------------------------------------
28
align 4
29
myimport:
30
edit_box_draw  dd aEdit_box_draw
31
edit_box_key   dd aEdit_box_key
32
edit_box_mouse dd aEdit_box_mouse
1343 IgorA 33
;version_ed     dd aVersion_ed
1338 IgorA 34
 
1343 IgorA 35
;check_box_draw	dd aCheck_box_draw
36
;check_box_mouse dd aCheck_box_mouse
37
;version_ch	dd aVersion_ch
1338 IgorA 38
 
1343 IgorA 39
;option_box_draw  dd aOption_box_draw
40
;option_box_mouse dd aOption_box_mouse
41
;version_op	 dd aVersion_op
1338 IgorA 42
 
43
scrollbar_ver_draw  dd aScrollbar_ver_draw
44
scrollbar_ver_mouse dd aScrollbar_ver_mouse
45
scrollbar_hor_draw  dd aScrollbar_hor_draw
46
scrollbar_hor_mouse dd aScrollbar_hor_mouse
1343 IgorA 47
;version_scrollbar   dd aVersion_scrollbar
1338 IgorA 48
 
1343 IgorA 49
;dinamic_button_draw  dd aDbutton_draw
50
;dinamic_button_mouse dd aDbutton_mouse
51
;version_dbutton      dd aVersion_dbutton
1338 IgorA 52
 
53
menu_bar_draw	 dd aMenu_bar_draw
54
menu_bar_mouse	 dd aMenu_bar_mouse
1343 IgorA 55
;version_menu_bar dd aVersion_menu_bar
1338 IgorA 56
 
57
  tl_data_init dd sz_tl_data_init
58
  tl_data_clear dd sz_tl_data_clear
59
  tl_info_clear dd sz_tl_info_clear
60
  tl_key dd sz_tl_key
61
  tl_mouse dd sz_tl_mouse
62
  tl_draw dd sz_tl_draw
63
  tl_info_undo dd sz_tl_info_undo
64
  tl_info_redo dd sz_tl_info_redo
65
  tl_node_add dd sz_tl_node_add
66
  tl_node_set_data dd sz_tl_node_set_data
67
  tl_node_get_data dd sz_tl_node_get_data
68
  tl_node_delete dd sz_tl_node_delete
69
  tl_cur_beg dd sz_tl_cur_beg
70
  tl_cur_next dd sz_tl_cur_next
71
  tl_cur_perv dd sz_tl_cur_perv
72
  tl_node_close_open dd sz_tl_node_close_open
73
  tl_node_lev_inc dd sz_tl_node_lev_inc
74
  tl_node_lev_dec dd sz_tl_node_lev_dec
75
dd 0,0
76
 
77
aEdit_box_draw	db 'edit_box',0
78
aEdit_box_key	db 'edit_box_key',0
79
aEdit_box_mouse db 'edit_box_mouse',0
1343 IgorA 80
;aVersion_ed	db 'version_ed',0
1338 IgorA 81
 
1343 IgorA 82
;aCheck_box_draw  db 'check_box_draw',0
83
;aCheck_box_mouse db 'check_box_mouse',0
84
;aVersion_ch	 db 'version_ch',0
1338 IgorA 85
 
1343 IgorA 86
;aOption_box_draw  db 'option_box_draw',0
87
;aOption_box_mouse db 'option_box_mouse',0
88
;aVersion_op	  db 'version_op',0
1338 IgorA 89
 
90
aScrollbar_ver_draw  db 'scrollbar_v_draw',0
91
aScrollbar_ver_mouse db 'scrollbar_v_mouse',0
92
aScrollbar_hor_draw  db 'scrollbar_h_draw',0
93
aScrollbar_hor_mouse db 'scrollbar_h_mouse',0
1343 IgorA 94
;aVersion_scrollbar   db 'version_scrollbar',0
1338 IgorA 95
 
1343 IgorA 96
;aDbutton_draw	  db 'dbutton_draw',0
97
;aDbutton_mouse	  db 'dbutton_mouse',0
98
;aVersion_dbutton  db 'version_dbutton',0
1338 IgorA 99
 
100
aMenu_bar_draw	  db 'menu_bar_draw',0
101
aMenu_bar_mouse   db 'menu_bar_mouse',0
1343 IgorA 102
;aVersion_menu_bar db 'version_menu_bar',0
1338 IgorA 103
 
104
  sz_tl_data_init db 'tl_data_init',0
105
  sz_tl_data_clear db 'tl_data_clear',0
106
  sz_tl_info_clear db 'tl_info_clear',0
107
  sz_tl_key db 'tl_key',0
108
  sz_tl_mouse db 'tl_mouse',0
109
  sz_tl_draw db 'tl_draw',0
110
  sz_tl_info_undo db 'tl_info_undo',0
111
  sz_tl_info_redo db 'tl_info_redo',0
112
  sz_tl_node_add db 'tl_node_add',0
113
  sz_tl_node_set_data db 'tl_node_set_data',0
114
  sz_tl_node_get_data db 'tl_node_get_data',0
115
  sz_tl_node_delete db 'tl_node_delete',0
116
  sz_tl_cur_beg db 'tl_cur_beg',0
117
  sz_tl_cur_next db 'tl_cur_next',0
118
  sz_tl_cur_perv db 'tl_cur_perv',0
119
  sz_tl_node_close_open db 'tl_node_close_open',0
120
  sz_tl_node_lev_inc db 'tl_node_lev_inc',0
121
  sz_tl_node_lev_dec db 'tl_node_lev_dec',0
122
;--------------------------------------------------
123
align 4
124
msgbox_lib_import:
125
  mb_create dd amb_create
126
  mb_reinit dd amb_reinit
127
  mb_setfunctions dd amb_setfunctions
128
  dd 0,0
129
  amb_create db 'mb_create',0
130
  amb_reinit db 'mb_reinit',0
131
  amb_setfunctions db 'mb_setfunctions',0
132
;---------------------------------------------------------------------
133
align 4
134
wScr:
135
.x:
1343 IgorA 136
.size_x   dw 16 ;+0
137
.start_x  dw 50 ;+2
1338 IgorA 138
.y:
1343 IgorA 139
.size_y   dw 300 ; +4
140
.start_y  dw  50 ; +6
141
.btn_high dd  15 ; +8
142
.type     dd   1 ;+12
143
.max_area dd 100 ;+16
144
.cur_area dd  30 ;+20
145
.position dd   0 ;+24
146
.bckg_col dd 0xeeeeee ;+28
147
.frnt_col dd 0xbbddff ;+32
148
.line_col dd   0 ;+36
149
.redraw   dd   0 ;+40
150
.delta    dw   0 ;+44
151
.delta2   dw   0 ;+46
1338 IgorA 152
.run_x:
1343 IgorA 153
.r_size_x  dw 0 ;+48
154
.r_start_x dw 0 ;+50
1338 IgorA 155
.run_y:
156
.r_size_y   dw 0 ;+52
157
.r_start_y  dw 0 ;+54
1343 IgorA 158
.m_pos      dd 0 ;+56
1338 IgorA 159
.m_pos_2    dd 0 ;+60
160
.m_keys     dd 0 ;+64
161
.run_size   dd 0 ;+68
162
.position2  dd 0 ;+72
163
.work_size  dd 0 ;+76
164
.all_redraw dd 0 ;+80
165
.ar_offset  dd 1 ;+84
166
;---------------------------------------------------------------------
167
align 4
168
hScr:
169
.x:
170
.size_x     dw 150 ;+0
171
.start_x    dw 0 ;+2
172
.y:
173
.size_y     dw 16 ;+4
174
.start_y    dw 50 ;+6
175
.btn_high   dd 15 ;+8
176
.type	    dd 1  ;+12
177
.max_area   dd 100 ;+16
178
.cur_area   dd 30  ;+20
179
.position   dd 0  ;+24
180
.bckg_col   dd 0xeeeeee ;+28
181
.frnt_col   dd 0xbbddff ;+32
182
.line_col   dd 0  ;+36
183
.redraw     dd 0  ;+40
184
.delta	    dw 0  ;+44
185
.delta2     dw 0  ;+46
186
.run_x:
187
.r_size_x   dw 0  ;+48
188
.r_start_x  dw 0  ;+50
189
.run_y:
190
.r_size_y   dw 0 ;+52
191
.r_start_y  dw 0 ;+54
192
.m_pos	    dd 0 ;+56
193
.m_pos_2    dd 0 ;+60
194
.m_keys     dd 0 ;+64
195
.run_size   dd 0 ;+68
196
.position2  dd 0 ;+72
197
.work_size  dd 0 ;+76
198
.all_redraw dd 0 ;+80
199
.ar_offset  dd 1 ;+84
200
;---------------------------------------------------------------------
201
align 4
202
ws_dir_lbox: ;фюўхЁэшщ ёъЁюыышэу фы  ¤ыхьхэЄр ListBox
203
.x:
204
.size_x     dw 16 ;+0
205
.start_x    dw 0 ;+2
206
.y:
207
.size_y     dw 30 ;+4
208
.start_y    dw 70 ;+6
209
.btn_high   dd 15 ;+8
210
.type	    dd 1  ;+12
211
.max_area   dd 100  ;+16
212
.cur_area   dd 30  ;+20
213
.position   dd 0  ;+24
214
.bckg_col   dd 0xeeeeee ;+28
215
.frnt_col   dd 0xbbddff ;+32
216
.line_col   dd 0  ;+36
217
.redraw     dd 0  ;+40
218
.delta	    dw 0  ;+44
219
.delta2     dw 0  ;+46
220
.run_x:
221
.r_size_x   dw 0  ;+48
222
.r_start_x  dw 0  ;+50
223
.run_y:
224
.r_size_y   dw 0 ;+52
225
.r_start_y  dw 0 ;+54
226
.m_pos	    dd 0 ;+56
227
.m_pos_2    dd 0 ;+60
228
.m_keys     dd 0 ;+64
229
.run_size   dd 0 ;+68
230
.position2  dd 0 ;+72
231
.work_size  dd 0 ;+76
232
.all_redraw dd 0 ;+80
1343 IgorA 233
.ar_offset  dd 1 ;+84
234
;---------------------------------------------------------------------
1338 IgorA 235
 
236
align 4
237
menu_data_1:
1343 IgorA 238
.type: dd 0   ;+0
1338 IgorA 239
.x:
1343 IgorA 240
.size_x  dw 35 ;+4
241
.start_x dw  5 ;+6
1338 IgorA 242
.y:
1343 IgorA 243
.size_y  dw 15 ;+8
244
.start_y dw  5 ;+10
245
.text_pointer: dd menu_text_area   ;+12
246
.pos_pointer:  dd menu_text_area.1 ;+16
247
.text_end   dd menu_text_area.end  ;+20
248
.mouse_pos  dd 0 ;+24
249
.mouse_keys dd 0 ;+28
1338 IgorA 250
.x1:
1343 IgorA 251
.size_x1  dw 70  ;+32
252
.start_x1 dw  5  ;+34
1338 IgorA 253
.y1:
1343 IgorA 254
.size_y1  dw 15  ;+36
255
.start_y1 dw 20  ;+38
256
.bckg_col dd 0xeeeeee ;+40
257
.frnt_col dd 0xff ;+44
258
.menu_col dd 0xffffff ;+48
259
.select   dd 0 ;+52
260
.out_select dd 0 ;+56
261
.buf_adress dd 0 ;+60
262
.procinfo dd procinfo ;0 ;+64
263
.click   dd 0 ;+68
264
.cursor  dd 0 ;+72
265
.cursor_old dd 0 ;+76
266
.interval   dd 16 ;+80
267
.cursor_max  dd 0 ;+84
268
.extended_key dd 0 ;+88
269
.menu_sel_col dd 0x00cc00 ;+92
270
.bckg_text_col dd 0 ;+96
271
.frnt_text_col dd 0xffffff ;+100
1338 IgorA 272
.mouse_keys_old dd 0 ;+104
1343 IgorA 273
.font_height dd 8 ;+108
274
.cursor_out  dd 0 ;+112
1338 IgorA 275
.get_mouse_flag dd 0 ;+116
276
;-------------------------
277
 
278
TE_PANEL_NULL equ 0
279
TE_PANEL_FIND equ 1
280
TE_PANEL_SYNTAX equ 2
281
TE_PANEL_WIDTH equ 150 ;°шЁшэр ярэхыш
282
 
283
count_of_dir_list_files equ 15
284
 
1449 IgorA 285
;------------------------------------------------------------------------------
286
struct TexSelect
287
  x0 dd ?
288
  y0 dd ?
289
  x1 dd ?
290
  y1 dd ?
291
ends
292
;------------------------------------------------------------------------------
293
ted_wnd_l equ dword[edi+ 0] ;окно редактора: отступ слева
294
ted_wnd_t equ dword[edi+ 4] ;окно редактора: отступ сверху
295
ted_wnd_w equ dword[edi+ 8] ;окно редактора: ширина
296
ted_wnd_h equ dword[edi+12] ;окно редактора: высота
297
ted_rec_l equ dword[edi+16] ;ширина панели в окне
298
ted_rec_t equ dword[edi+20] ;высота панели в окне
299
ted_rec_w equ dword[edi+24] ;ширина символа (знакоместа) в окне
300
ted_rec_h equ dword[edi+28] ;высота символа (знакоместа) в окне
301
ted_drag_m equ byte[edi+32] ;выделение от мыши
302
ted_drag_k equ byte[edi+33] ;выделение от клавиатуры
1456 IgorA 303
ted_sel_x0 equ dword[edi+34] ;координата выделения x0
304
ted_sel_y0 equ dword[edi+38] ;координата выделения y0
305
ted_sel_x1 equ dword[edi+42] ;координата выделения x1
306
ted_sel_y1 equ dword[edi+46] ;координата выделения y1
307
;запасные координаты выделения
308
ted_seln_x0 equ dword[edi+50]
309
ted_seln_y0 equ dword[edi+54]
310
ted_seln_x1 equ dword[edi+58]
311
ted_seln_y1 equ dword[edi+62]
312
 
313
ted_tex     equ dword[edi+66] ;указатель на память для хранения текста
314
ted_tex_1   equ dword[edi+70] ;указатель на 1-ю стркутру символа
315
ted_tex_end equ dword[edi+74] ;указатель на последнюю структуру символа
316
ted_cur_x   equ dword[edi+78] ;координата x курсора
317
ted_cur_y   equ dword[edi+82] ;координата y курсора
318
ted_cur_ins equ  byte[edi+86] ;режим работы курсора (обычный или замена)
319
ted_mode_color equ byte[edi+87] ;режим выделения слов цветом (0-выкл. 1-вкл.)
320
ted_mode_invis equ byte[edi+88] ;режим показа непечатаемых символов
321
ted_gp_opt     equ byte[edi+89] ;опции возвращаемые функцией GetPos
322
ted_colors_text_count equ dword[edi+90] ;колличество цветов текста
323
ted_key_words_count   equ dword[edi+94] ;колличество ключевых слов
324
ted_color_cursor   equ dword[edi+98] ;цвет курсора
325
ted_color_wnd_capt equ dword[edi+102] ;цвет полей вокруг окна
326
ted_color_wnd_work equ dword[edi+106] ;цвет фона окна
327
ted_color_wnd_bord equ dword[edi+110] ;цвет текста на полях
328
ted_color_select   equ dword[edi+114] ;цвет выделения
329
ted_color_cur_text equ dword[edi+118] ;цвет символа под курсором
330
ted_color_wnd_text equ dword[edi+122] ;цвет текста в окне
331
ted_syntax_file    equ dword[edi+126] ;указатель на начало файла синтаксиса
332
ted_syntax_file_end equ dword[edi+130] ;указатель на конец файла синтаксиса
333
ted_text_colors     equ dword[edi+134] ;указатель на массив цветов текста
334
ted_help_text_f1    equ dword[edi+138] ;указатель на текст справки (по нажатии F1)
335
ted_help_id         equ dword[edi+142] ;идентификатор для справки
336
ted_key_words_data  equ dword[edi+146] ;указатель на структуры ключевых слов TexColViv
337
ted_tim_ch          equ dword[edi+150] ;колличество изменений в файле
338
ted_tim_undo        equ dword[edi+154] ;колличество отмененных действий
339
ted_tim_ls          equ dword[edi+158] ;время последнего сохранения
340
ted_tim_co          equ dword[edi+162] ;время последней цветовой разметки
341
ted_el_focus        equ dword[edi+166] ;указатель на переменную элемента в фокусе
342
ted_err_save        equ  word[edi+170] ;ошибка сохранения файла
343
ted_key_new         equ  byte[edi+172] ;символ, который будет добавлятся с клавиатуры
344
ted_symbol_new_line equ  byte[edi+173] ;символ завершения строки
345
ted_scr_w           equ dword[edi+174] ;вертикальный скроллинг
346
ted_scr_h           equ dword[edi+178] ;горизонтальный скроллинг
347
ted_panel_id        equ  byte[edi+182] ;номер открытой панели
1449 IgorA 348
;------------------------------------------------------------------------------
1456 IgorA 349
sb_offs_max_area equ 16
350
sb_offs_cur_area equ 20
351
sb_offs_position equ 24
352
sb_offs_redraw   equ 40
353
;------------------------------------------------------------------------------
354
ted_opt_ed_move_cursor equ 1 ;двигать курсор после добавления текста
355
ted_opt_ed_change_time equ 2 ;добавлять изменения при редактировании текста
356
ted_offs_sel  equ 34 ;смещение структуры sel
357
ted_offs_seln equ 50 ;смещение структуры seln
358
ted_offs_count_colors equ 90 ;смещение переменной колличества цветов
359
ted_offs_key_new equ 172
360
ted_offs_symbol_new_line equ 173 ;смещение символа новой строки
361
;------------------------------------------------------------------------------
1449 IgorA 362
align 4
363
tedit0: ;структура текстового редактора
364
	.wnd BOX 0,50,440,150 ;+ 0
365
	.rec BOX 30,23,7,10   ;+16
1456 IgorA 366
	.drag_m db 0 ;+32 выделение от мыши
367
	.drag_k db 0 ;+33 выделение от клавиатуры
368
	.sel  TexSelect 0,0,0,0 ;+34 структура выделения
369
	.seln TexSelect ;+50 дополнительная структура выделения
370
	.tex     dd 0 ;+66 text memory pointer
371
	.tex_1   dd 0 ;+70 text first symbol pointer
372
	.tex_end dd 0 ;+74 text end memory pointer
373
	.cur_x   dd 0 ;+78
374
	.cur_y   dd 0 ;+82
375
	.cur_ins db 1 ;+86
376
	.mode_color db 1 ;+87 режим выделения слов цветом (0-выкл. 1-вкл.)
377
	.mode_invis db 0 ;+88 режим показа непечатаемых символов
378
	.gp_opt     db 0 ;+89 опции возвращаемые функцией GetPos
379
; \/ не разрывать следующие переменные:
380
	.count_colors_text dd 1 ;+90 колличество цветов текста
381
	.count_key_words   dd 0 ;+94 колличество ключевых слов
382
	.color_cursor    dd 0x808080 ;+98 цвет курсора
383
	.color_wnd_capt  dd     0x80 ;+102 цвет полей вокруг окна
384
	.color_wnd_work  dd      0x0 ;+106 цвет фона окна
385
	.color_wnd_bord  dd 0xd0d0d0 ;+110 цвет текста на полях
386
	.color_select    dd 0x208080 ;+114 цвет выделения
387
	.color_cur_text  dd 0xff0000 ;+118 цвет символа под курсором
388
	.color_wnd_text  dd 0xffff00 ;+122 цвет текста в окне
389
; /\ другие, идущие ниже можно разрывать.
390
	.syntax_file     dd 0 ;+126 указатель на начало файла синтаксиса
391
	.syntax_file_end dd 0 ;+130 указатель на конец файла синтаксиса
392
	.text_colors     dd 0 ;+134 указатель на массив цветов текста
393
	.help_text_f1    dd 0 ;+138 указатель на текст справки (по нажатии F1)
394
	.help_id         dd -1 ;+142 идентификатор для справки
395
	.key_words_data  dd 0 ;+146 указатель на структуры ключевых слов TexColViv
396
	.tim_ch   dd ? ;+150 количество изменений в файле
397
	.tim_undo dd ? ;+154 количество отмененных действий
398
	.tim_ls   dd ? ;+158 время последнего сохранения
399
	.tim_co   dd ? ;+162 время последней цветовой разметки
400
	.el_focus dd el_focus ;+166 указатель на переменную элемента в фокусе
401
	.err_save    dw 0 ;+170 ошибка сохранения файла
402
	.key_new     db 0 ;+172 символ, который будет добавлятся с клавиатуры
403
	.symbol_new_line db 20 ;+173 символ завершения строки
404
	.scr_w dd wScr ;+174 вертикальный скроллинг
405
	.scr_h dd hScr ;+178 горизонтальный скроллинг
406
	.panel_id db 0 ;+182 номер открытой панели
1449 IgorA 407
;------------------------------------------------------------------------------
408
 
1456 IgorA 409
FkPos: rd 256
410
conv_tabl rb 128 ; таблица для конвертирования scan-кода в ascii-код
411
 
412
 
1338 IgorA 413
el_focus dd 0
414
mouse_dd dd 0
415
tree1 tree_list 264,count_of_dir_list_files+2, tl_key_no_edit+tl_draw_par_line+tl_list_box_mode,\
416
    16,16, 0x8080ff,0x0000ff,0xffffff, 0,70,TE_PANEL_WIDTH-17,120, 0,0,0, el_focus,\
417
    ws_dir_lbox,0
418
 
419
;dir_list memory
420
tree_file_struct:
421
  dd 1
422
  dd 0,0,count_of_dir_list_files
423
  dd dir_mem
424
  db 0
425
  dd file_name ;sys_path
426
 
427
dir_mem rb 32+304*count_of_dir_list_files
428
 
429
 
1343 IgorA 430
if lang eq ru
431
 
1338 IgorA 432
menu_text_area:
433
db 'Файл',0
434
.1:
435
db 'Создать',0
436
db 'Открыть',0
437
db 'Сохранить',0
438
db 'Выход',0
439
.end:
440
db 0
441
 
442
;--------
443
msgbox_1:
444
  dw 0
445
  db 'Внимание',0 ;+2 = +MB_TEXT_OFFSET
446
  db 'Файл большой, потому открыт не весь.',13
447
  db '  1. При его сохранении будут потеряны "не открывшиеся" символы.',13
448
  db '  2. В документ нельзя добавлять текст, т. к. память занята.',0
449
  db 'Я понял(а)',0 ;button1
450
  db 0
451
msgbox_2:
452
  db 3,0
453
  db 'Внимание',0 ;+2 = +MB_TEXT_OFFSET
454
  db 'Сохранить изменения в файле?',0
455
  db 'Сохранить',0
456
  db 'Не сохранять',0
457
  db 'Отмена',0
458
  db 0
459
msgbox_2_funct:
460
  dd On_SaveAndNewFile
461
  dd On_NewFile
462
  dd 0
463
 
464
msgbox_3:
465
  db 1,0
466
  db 'Внимание',0 ;+2 = +MB_TEXT_OFFSET
467
  db 'Ошибка при открытии файла с цветовыми настройками!',13,\
468
     'Потому выделение слов цветом не возможно.',13,\
1343 IgorA 469
     '  (код ошибки ='
1338 IgorA 470
  .err: db '?'
471
  db ')',0
472
  db 'Закрыть',0
473
  db 0
474
 
475
msgbox_4:
476
  db 1,0
477
  db 'Внимание',0 ;+2 = +MB_TEXT_OFFSET
478
  db 'Ошибка при открытии файла!',13,\
479
     'Возможно имя файла введено не правильно.',13,\
1343 IgorA 480
     '  (код ошибки ='
1338 IgorA 481
  .err: db '?'
482
  db ')',0
483
  db 'Закрыть',0
484
  db 0
485
 
486
msgbox_5:
487
  db 3,0
488
  db 'Внимание',0 ;+2 = +MB_TEXT_OFFSET
489
  db 'Сохранить изменения в файле?',0
490
  db 'Не сохранять',0
491
  db 'Отмена',0
492
  db 0
493
msgbox_5_funct:
1456 IgorA 494
  dd but_no_msg_OpenFile
1338 IgorA 495
  dd 0
496
 
497
msgbox_6:
498
  db 1,0
499
  db 'Внимание',0 ;+2 = +MB_TEXT_OFFSET
500
  db 'Ошибка при сохранении файла!',13,\
501
     'Возможно имя файла введено не правильно.',13,\
1343 IgorA 502
     '  (код ошибки ='
1338 IgorA 503
  .err: db '?'
504
  db ')',0
505
  db 'Закрыть',0
506
  db 0
507
msgbox_7:
508
  db 1,0
509
  db 'Текст не найден',0 ;+2 = +MB_TEXT_OFFSET
510
  db 'Достигнут конец документа.',13,\
511
     'Попробуйте перейти в начало документа',13,\
512
     'или изменить запрос и повторить поиск.',0
513
  db 'Закрыть',0
514
  db 0
515
msgbox_8:
516
  db 3,0
517
  db 'Внимание',0 ;+2 = +MB_TEXT_OFFSET
518
  db 'Для выхода завершите работу с файлом.',13,\
519
     'Попробуйте сохранить изменения в файле',13,\
520
     'или начать новый пустой.',0
521
  db 'Отмена',0
522
  db 0
523
 
524
txtFindCapt db 'Поиск',0
525
txtFindNext db 'Найти далее',0
526
txtFormatCapt db 'Формат',0
527
txtFormatApply db 'Применить',0
1343 IgorA 528
txtRow db 'Строка',0
529
txtCol db 'Знак',0
530
txtOtm db 'Отмены',0
531
txtBuf db 'Буфер: '
532
buf db BUF_SIZE dup(0) ;buf тёхуфр яюёых txtBuf
533
 
534
else
535
 
536
menu_text_area:
537
db 'File',0
538
.1:
539
db 'New',0
540
db 'Open',0
541
db 'Save',0
542
db 'Exit',0
543
.end:
544
db 0
545
 
546
;--------
547
msgbox_1:
548
  dw 0
549
  db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
550
  db 'File is large, because not all open.',13
551
  db '  1. If you save it will lose "not opened" characters.',13
552
  db '  2. The document can not add text, because the memory is busy.',0
553
  db 'Ok',0 ;button1
554
  db 0
555
msgbox_2:
556
  db 3,0
557
  db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
558
  db 'Save changes to the file?',0
559
  db 'Save',0
560
  db 'Discard',0
561
  db 'Cancel',0
562
  db 0
563
msgbox_2_funct:
564
  dd On_SaveAndNewFile
565
  dd On_NewFile
566
  dd 0
567
 
568
msgbox_3:
569
  db 1,0
570
  db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
571
  db 'Error opening the file with the color settings!',13,\
572
     'Because color selection of words is not possible.',13,\
573
     '  (error code ='
574
  .err: db '?'
575
  db ')',0
576
  db 'Close',0
577
  db 0
578
 
579
msgbox_4:
580
  db 1,0
581
  db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
582
  db 'Error opening file!',13,\
583
     'Maybe the file name is not entered correctly.',13,\
584
     '  (error code ='
585
  .err: db '?'
586
  db ')',0
587
  db 'Close',0
588
  db 0
589
 
590
msgbox_5:
591
  db 3,0
592
  db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
593
  db 'Save changes to the file?',0
594
  db 'Discard',0
595
  db 'Cancel',0
596
  db 0
597
msgbox_5_funct:
1456 IgorA 598
  dd but_no_msg_OpenFile
1343 IgorA 599
  dd 0
600
 
601
msgbox_6:
602
  db 1,0
603
  db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
604
  db 'Error saving file!',13,\
605
     'Maybe the file name is not entered correctly.',13,\
606
     '  (error code ='
607
  .err: db '?'
608
  db ')',0
609
  db 'Close',0
610
  db 0
611
msgbox_7:
612
  db 1,0
613
  db 'Text not found.',0 ;+2 = +MB_TEXT_OFFSET
614
  db 'Reached end of the document.',13,\
615
     'Try to go to the beginning of the document',13,\
616
     'or change the query and search again.',0
617
  db 'Close',0
618
  db 0
619
msgbox_8:
620
  db 3,0
621
  db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
622
  db 'To quit, quit the file.',13,\
623
     'Try to keep changes to a file',13,\
624
     'or start a new blank file.',0
625
  db 'Cancel',0
626
  db 0
627
 
628
txtFindCapt db 'Search',0
629
txtFindNext db 'Find next',0
630
txtFormatCapt db 'Format',0
631
txtFormatApply db 'Apply',0
632
txtRow db 'Rows',0
633
txtCol db 'Cols',0
634
txtOtm db 'Undo',0
635
txtBuf db 'Buffer: '
636
buf db BUF_SIZE dup(0) ;buf always after txtBuf
637
 
638
end if
1338 IgorA 639
;------
640
align 4
641
EvChar db 0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0
642
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
643
    db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
644
    db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
645
    db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
646
    db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
647
    db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
648
    db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0
649
    db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
650
    db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
651
    db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
652
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
653
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
654
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
655
    db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
656
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
657
 
658
EvUpper db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
659
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
660
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
661
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
662
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
663
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
664
    db 0,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79
665
    db 80,81,82,83,84,85,86,87,88,89,90,0,0,0,0,0
666
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
667
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
668
    db 128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143
669
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
670
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
671
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
672
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
673
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
674
EvLover db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
675
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
676
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
677
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
678
    db 0,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111
679
    db 112,113,114,115,116,117,118,119,120,121,122,0,0,0,0,0
680
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
681
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
682
    db 160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175
683
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
684
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
685
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
686
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
687
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
688
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
689
    db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
690
conv_table dd 0
691
 
692
 
693
KM_SHIFT equ 0x00010000
694
KM_CTRL equ 0x00020000
695
KM_ALT equ 0x00040000
696
KM_NUMLOCK equ 0x00080000
697
 
698
; KEY CODES
699
KEY_F1 equ 0x0000003B
700
KEY_F2 equ 0x0000003C
701
KEY_F3 equ 0x0000003D
702