Subversion Repositories Kolibri OS

Rev

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

Rev Author Line No. Line
1338 IgorA 1
fn_col_option dd def_col_file
2
fn_syntax_dir db 'info/',0
3
def_col_file db 'default.syn',0
4
 
2632 IgorA 5
system_dir_0 db '/sys/lib/'
6
lib_name_0 db 'box_lib.obj',0
1338 IgorA 7
 
2632 IgorA 8
system_dir_1 db '/sys/lib/'
9
lib_name_1 db 'msgbox.obj',0
1338 IgorA 10
 
2632 IgorA 11
system_dir_2 db '/sys/lib/'
12
lib_name_2 db 'proc_lib.obj',0
1592 IgorA 13
 
2632 IgorA 14
system_dir_3 db '/sys/lib/'
15
lib_name_3 db 'libimg.obj',0
1338 IgorA 16
 
17
;---------------------------------------------------------------------
18
align 4
2632 IgorA 19
import_box_lib:
20
	dd alib_init0 ;функция запускается макросом 1 раз при подключении бибилиотеки, потому в программе метка на нее не нужна
1489 IgorA 21
 
1467 IgorA 22
	edit_box_draw  dd aEdit_box_draw
23
	edit_box_key   dd aEdit_box_key
24
	edit_box_mouse dd aEdit_box_mouse
25
	;version_ed     dd aVersion_ed
1338 IgorA 26
 
1467 IgorA 27
	;check_box_draw dd aCheck_box_draw
28
	;check_box_mouse dd aCheck_box_mouse
29
	;version_ch     dd aVersion_ch
1338 IgorA 30
 
1467 IgorA 31
	;option_box_draw  dd aOption_box_draw
32
	;option_box_mouse dd aOption_box_mouse
33
	;version_op      dd aVersion_op
1338 IgorA 34
 
1467 IgorA 35
	scrollbar_ver_draw  dd aScrollbar_ver_draw
36
	scrollbar_ver_mouse dd aScrollbar_ver_mouse
37
	scrollbar_hor_draw  dd aScrollbar_hor_draw
38
	scrollbar_hor_mouse dd aScrollbar_hor_mouse
39
	;version_scrollbar   dd aVersion_scrollbar
1338 IgorA 40
 
1467 IgorA 41
	;dinamic_button_draw  dd aDbutton_draw
42
	;dinamic_button_mouse dd aDbutton_mouse
43
	;version_dbutton      dd aVersion_dbutton
1338 IgorA 44
 
1467 IgorA 45
	menu_bar_draw	 dd aMenu_bar_draw
46
	menu_bar_mouse	 dd aMenu_bar_mouse
47
	;version_menu_bar dd aVersion_menu_bar
1338 IgorA 48
 
1467 IgorA 49
	tl_data_init dd sz_tl_data_init
50
	tl_data_clear dd sz_tl_data_clear
51
	tl_info_clear dd sz_tl_info_clear
52
	tl_key dd sz_tl_key
53
	tl_mouse dd sz_tl_mouse
54
	tl_draw dd sz_tl_draw
55
	tl_info_undo dd sz_tl_info_undo
56
	tl_info_redo dd sz_tl_info_redo
57
	tl_node_add dd sz_tl_node_add
58
	tl_node_set_data dd sz_tl_node_set_data
59
	tl_node_get_data dd sz_tl_node_get_data
60
	tl_node_delete dd sz_tl_node_delete
61
	tl_cur_beg dd sz_tl_cur_beg
62
	tl_cur_next dd sz_tl_cur_next
63
	tl_cur_perv dd sz_tl_cur_perv
64
	tl_node_close_open dd sz_tl_node_close_open
65
	tl_node_lev_inc dd sz_tl_node_lev_inc
66
	tl_node_lev_dec dd sz_tl_node_lev_dec
1457 IgorA 67
 
1467 IgorA 68
	ted_but_save_file dd sz_ted_but_save_file
69
	ted_but_sumb_upper dd sz_ted_but_sumb_upper
70
	ted_but_sumb_lover dd sz_ted_but_sumb_lover
71
	ted_can_save dd sz_ted_can_save
72
	ted_clear dd sz_ted_clear
73
	ted_delete dd sz_ted_delete
74
	ted_draw dd sz_ted_draw
75
	ted_init dd sz_ted_init
76
	ted_init_scroll_bars dd sz_ted_init_scroll_bars
77
	ted_init_syntax_file dd sz_ted_init_syntax_file
78
	ted_is_select dd sz_ted_is_select
79
	ted_key dd sz_ted_key
80
	ted_mouse dd sz_ted_mouse
81
	ted_open_file dd sz_ted_open_file
82
	ted_text_add dd sz_ted_text_add
83
	ted_but_select_word dd sz_ted_but_select_word
84
	ted_but_cut dd sz_ted_but_cut
85
	ted_but_copy dd sz_ted_but_copy
86
	ted_but_paste dd sz_ted_but_paste
87
	ted_but_undo dd sz_ted_but_undo
88
	ted_but_redo dd sz_ted_but_redo
89
	ted_but_reverse dd sz_ted_but_reverse
90
	ted_but_find_next dd sz_ted_but_find_next
91
	ted_text_colored dd sz_ted_text_colored
2102 IgorA 92
	version_text_edit dd sz_ted_version
1457 IgorA 93
 
1338 IgorA 94
dd 0,0
2632 IgorA 95
	alib_init0 db 'lib_init',0
1338 IgorA 96
 
1467 IgorA 97
	aEdit_box_draw	db 'edit_box',0
98
	aEdit_box_key	db 'edit_box_key',0
99
	aEdit_box_mouse db 'edit_box_mouse',0
100
	;aVersion_ed    db 'version_ed',0
1338 IgorA 101
 
1467 IgorA 102
	;aCheck_box_draw  db 'check_box_draw',0
103
	;aCheck_box_mouse db 'check_box_mouse',0
104
	;aVersion_ch     db 'version_ch',0
1338 IgorA 105
 
1467 IgorA 106
	;aOption_box_draw  db 'option_box_draw',0
107
	;aOption_box_mouse db 'option_box_mouse',0
108
	;aVersion_op      db 'version_op',0
1338 IgorA 109
 
1467 IgorA 110
	aScrollbar_ver_draw  db 'scrollbar_v_draw',0
111
	aScrollbar_ver_mouse db 'scrollbar_v_mouse',0
112
	aScrollbar_hor_draw  db 'scrollbar_h_draw',0
113
	aScrollbar_hor_mouse db 'scrollbar_h_mouse',0
114
	;aVersion_scrollbar   db 'version_scrollbar',0
1338 IgorA 115
 
1467 IgorA 116
	;aDbutton_draw    db 'dbutton_draw',0
117
	;aDbutton_mouse   db 'dbutton_mouse',0
118
	;aVersion_dbutton  db 'version_dbutton',0
1338 IgorA 119
 
1467 IgorA 120
	aMenu_bar_draw	  db 'menu_bar_draw',0
121
	aMenu_bar_mouse   db 'menu_bar_mouse',0
122
	;aVersion_menu_bar db 'version_menu_bar',0
1338 IgorA 123
 
1467 IgorA 124
	sz_tl_data_init db 'tl_data_init',0
125
	sz_tl_data_clear db 'tl_data_clear',0
126
	sz_tl_info_clear db 'tl_info_clear',0
127
	sz_tl_key db 'tl_key',0
128
	sz_tl_mouse db 'tl_mouse',0
129
	sz_tl_draw db 'tl_draw',0
130
	sz_tl_info_undo db 'tl_info_undo',0
131
	sz_tl_info_redo db 'tl_info_redo',0
132
	sz_tl_node_add db 'tl_node_add',0
133
	sz_tl_node_set_data db 'tl_node_set_data',0
134
	sz_tl_node_get_data db 'tl_node_get_data',0
135
	sz_tl_node_delete db 'tl_node_delete',0
136
	sz_tl_cur_beg db 'tl_cur_beg',0
137
	sz_tl_cur_next db 'tl_cur_next',0
138
	sz_tl_cur_perv db 'tl_cur_perv',0
139
	sz_tl_node_close_open db 'tl_node_close_open',0
140
	sz_tl_node_lev_inc db 'tl_node_lev_inc',0
141
	sz_tl_node_lev_dec db 'tl_node_lev_dec',0
1457 IgorA 142
 
1467 IgorA 143
	sz_ted_but_save_file	db 'ted_but_save_file',0
144
	sz_ted_but_sumb_upper	db 'ted_but_sumb_upper',0
145
	sz_ted_but_sumb_lover	db 'ted_but_sumb_lover',0
146
	sz_ted_can_save 		db 'ted_can_save',0
147
	sz_ted_clear			db 'ted_clear',0
148
	sz_ted_delete			db 'ted_delete',0
149
	sz_ted_draw				db 'ted_draw',0
150
	sz_ted_init				db 'ted_init',0
151
	sz_ted_init_scroll_bars db 'ted_init_scroll_bars',0
152
	sz_ted_init_syntax_file db 'ted_init_syntax_file',0
153
	sz_ted_is_select		db 'ted_is_select',0
154
	sz_ted_key				db 'ted_key',0
155
	sz_ted_mouse			db 'ted_mouse',0
156
	sz_ted_open_file		db 'ted_open_file',0
157
	sz_ted_text_add 		db 'ted_text_add',0
158
	sz_ted_but_select_word	db 'ted_but_select_word',0
159
	sz_ted_but_cut			db 'ted_but_cut',0
160
	sz_ted_but_copy 		db 'ted_but_copy',0
161
	sz_ted_but_paste		db 'ted_but_paste',0
162
	sz_ted_but_undo 		db 'ted_but_undo',0
163
	sz_ted_but_redo 		db 'ted_but_redo',0
164
	sz_ted_but_reverse		db 'ted_but_reverse',0
165
	sz_ted_but_find_next	db 'ted_but_find_next',0
166
	sz_ted_text_colored		db 'ted_text_colored',0
2102 IgorA 167
	sz_ted_version db 'version_text_edit',0
1592 IgorA 168
 
1338 IgorA 169
align 4
2632 IgorA 170
import_proclib:
1592 IgorA 171
	OpenDialog_Init dd aOpenDialog_Init
172
	OpenDialog_Start dd aOpenDialog_Start
173
dd 0,0
174
	aOpenDialog_Init db 'OpenDialog_init',0
175
	aOpenDialog_Start db 'OpenDialog_start',0
176
 
177
align 4
2632 IgorA 178
import_msgbox_lib:
1467 IgorA 179
	mb_create dd amb_create
180
	mb_reinit dd amb_reinit
181
	mb_setfunctions dd amb_setfunctions
182
dd 0,0
183
	amb_create db 'mb_create',0
184
	amb_reinit db 'mb_reinit',0
185
	amb_setfunctions db 'mb_setfunctions',0
2632 IgorA 186
 
187
align 4
188
import_libimg:
189
	dd alib_init1
190
	;img_is_img  dd aimg_is_img
191
	;img_info    dd aimg_info
192
	;img_from_file dd aimg_from_file
193
	;img_to_file dd aimg_to_file
194
	;img_from_rgb dd aimg_from_rgb
195
	;img_to_rgb  dd aimg_to_rgb
196
	img_to_rgb2 dd aimg_to_rgb2
197
	img_decode  dd aimg_decode
198
	;img_encode  dd aimg_encode
199
	;img_create  dd aimg_create
200
	img_destroy dd aimg_destroy
201
	;img_destroy_layer dd aimg_destroy_layer
202
	;img_count   dd aimg_count
203
	;img_lock_bits dd aimg_lock_bits
204
	;img_unlock_bits dd aimg_unlock_bits
205
	;img_flip    dd aimg_flip
206
	;img_flip_layer dd aimg_flip_layer
207
	;img_rotate  dd aimg_rotate
208
	;img_rotate_layer dd aimg_rotate_layer
209
	;img_draw    dd aimg_draw
210
dd 0,0
211
	alib_init1   db 'lib_init',0
212
	;aimg_is_img  db 'img_is_img',0 ;определяет по данным, может ли библиотека сделать из них изображение
213
	;aimg_info    db 'img_info',0
214
	;aimg_from_file db 'img_from_file',0
215
	;aimg_to_file db 'img_to_file',0
216
	;aimg_from_rgb db 'img_from_rgb',0
217
	;aimg_to_rgb  db 'img_to_rgb',0 ;преобразование изображения в данные RGB
218
	aimg_to_rgb2 db 'img_to_rgb2',0
219
	aimg_decode  db 'img_decode',0 ;автоматически определяет формат графических данных
220
	;aimg_encode  db 'img_encode',0
221
	;aimg_create  db 'img_create',0
222
	aimg_destroy db 'img_destroy',0
223
	;aimg_destroy_layer db 'img_destroy_layer',0
224
	;aimg_count   db 'img_count',0
225
	;aimg_lock_bits db 'img_lock_bits',0
226
	;aimg_unlock_bits db 'img_unlock_bits',0
227
	;aimg_flip    db 'img_flip',0
228
	;aimg_flip_layer db 'img_flip_layer',0
229
	;aimg_rotate  db 'img_rotate',0
230
	;aimg_rotate_layer db 'img_rotate_layer',0
231
	;aimg_draw    db 'img_draw',0
232
 
1592 IgorA 233
;---------------------------------------------------------------------
1338 IgorA 234
align 4
235
wScr:
236
.x:
1343 IgorA 237
.size_x   dw 16 ;+0
238
.start_x  dw 50 ;+2
1338 IgorA 239
.y:
1343 IgorA 240
.size_y   dw 300 ; +4
241
.start_y  dw  50 ; +6
242
.btn_high dd  15 ; +8
1467 IgorA 243
.type	  dd   1 ;+12
1343 IgorA 244
.max_area dd 100 ;+16
245
.cur_area dd  30 ;+20
246
.position dd   0 ;+24
2632 IgorA 247
.bckg_col dd   0 ;+28
248
.frnt_col dd   0 ;+32
1343 IgorA 249
.line_col dd   0 ;+36
250
.redraw   dd   0 ;+40
1467 IgorA 251
.delta	  dw   0 ;+44
1343 IgorA 252
.delta2   dw   0 ;+46
1338 IgorA 253
.run_x:
1343 IgorA 254
.r_size_x  dw 0 ;+48
255
.r_start_x dw 0 ;+50
1338 IgorA 256
.run_y:
257
.r_size_y   dw 0 ;+52
258
.r_start_y  dw 0 ;+54
1467 IgorA 259
.m_pos	    dd 0 ;+56
1338 IgorA 260
.m_pos_2    dd 0 ;+60
261
.m_keys     dd 0 ;+64
262
.run_size   dd 0 ;+68
263
.position2  dd 0 ;+72
264
.work_size  dd 0 ;+76
265
.all_redraw dd 0 ;+80
266
.ar_offset  dd 1 ;+84
267
;---------------------------------------------------------------------
268
align 4
269
hScr:
270
.x:
271
.size_x     dw 150 ;+0
272
.start_x    dw 0 ;+2
273
.y:
274
.size_y     dw 16 ;+4
275
.start_y    dw 50 ;+6
276
.btn_high   dd 15 ;+8
277
.type	    dd 1  ;+12
278
.max_area   dd 100 ;+16
2632 IgorA 279
.cur_area   dd 30 ;+20
1338 IgorA 280
.position   dd 0  ;+24
2632 IgorA 281
.bckg_col   dd 0  ;+28
282
.frnt_col   dd 0  ;+32
1338 IgorA 283
.line_col   dd 0  ;+36
284
.redraw     dd 0  ;+40
285
.delta	    dw 0  ;+44
286
.delta2     dw 0  ;+46
287
.run_x:
288
.r_size_x   dw 0  ;+48
289
.r_start_x  dw 0  ;+50
290
.run_y:
291
.r_size_y   dw 0 ;+52
292
.r_start_y  dw 0 ;+54
293
.m_pos	    dd 0 ;+56
294
.m_pos_2    dd 0 ;+60
295
.m_keys     dd 0 ;+64
296
.run_size   dd 0 ;+68
297
.position2  dd 0 ;+72
298
.work_size  dd 0 ;+76
299
.all_redraw dd 0 ;+80
300
.ar_offset  dd 1 ;+84
301
;---------------------------------------------------------------------
302
align 4
1467 IgorA 303
ws_dir_lbox: ;дочерний скроллинг для элемента ListBox
1338 IgorA 304
.x:
305
.size_x     dw 16 ;+0
306
.start_x    dw 0 ;+2
307
.y:
308
.size_y     dw 30 ;+4
309
.start_y    dw 70 ;+6
310
.btn_high   dd 15 ;+8
311
.type	    dd 1  ;+12
2632 IgorA 312
.max_area   dd 100 ;+16
313
.cur_area   dd 30 ;+20
1338 IgorA 314
.position   dd 0  ;+24
2632 IgorA 315
.bckg_col   dd 0  ;+28
316
.frnt_col   dd 0  ;+32
1338 IgorA 317
.line_col   dd 0  ;+36
318
.redraw     dd 0  ;+40
319
.delta	    dw 0  ;+44
320
.delta2     dw 0  ;+46
321
.run_x:
322
.r_size_x   dw 0  ;+48
323
.r_start_x  dw 0  ;+50
324
.run_y:
325
.r_size_y   dw 0 ;+52
326
.r_start_y  dw 0 ;+54
327
.m_pos	    dd 0 ;+56
328
.m_pos_2    dd 0 ;+60
329
.m_keys     dd 0 ;+64
330
.run_size   dd 0 ;+68
331
.position2  dd 0 ;+72
332
.work_size  dd 0 ;+76
333
.all_redraw dd 0 ;+80
1343 IgorA 334
.ar_offset  dd 1 ;+84
335
;---------------------------------------------------------------------
1338 IgorA 336
 
337
align 4
338
menu_data_1:
1343 IgorA 339
.type: dd 0   ;+0
1338 IgorA 340
.x:
1343 IgorA 341
.size_x  dw 35 ;+4
342
.start_x dw  5 ;+6
1338 IgorA 343
.y:
1343 IgorA 344
.size_y  dw 15 ;+8
345
.start_y dw  5 ;+10
346
.text_pointer: dd menu_text_area   ;+12
347
.pos_pointer:  dd menu_text_area.1 ;+16
348
.text_end   dd menu_text_area.end  ;+20
349
.mouse_pos  dd 0 ;+24
350
.mouse_keys dd 0 ;+28
1338 IgorA 351
.x1:
1343 IgorA 352
.size_x1  dw 70  ;+32
353
.start_x1 dw  5  ;+34
1338 IgorA 354
.y1:
1343 IgorA 355
.size_y1  dw 15  ;+36
356
.start_y1 dw 20  ;+38
357
.bckg_col dd 0xeeeeee ;+40
358
.frnt_col dd 0xff ;+44
359
.menu_col dd 0xffffff ;+48
360
.select   dd 0 ;+52
361
.out_select dd 0 ;+56
362
.buf_adress dd 0 ;+60
363
.procinfo dd procinfo ;0 ;+64
1467 IgorA 364
.click	 dd 0 ;+68
1343 IgorA 365
.cursor  dd 0 ;+72
366
.cursor_old dd 0 ;+76
367
.interval   dd 16 ;+80
368
.cursor_max  dd 0 ;+84
369
.extended_key dd 0 ;+88
370
.menu_sel_col dd 0x00cc00 ;+92
371
.bckg_text_col dd 0 ;+96
372
.frnt_text_col dd 0xffffff ;+100
1338 IgorA 373
.mouse_keys_old dd 0 ;+104
1343 IgorA 374
.font_height dd 8 ;+108
375
.cursor_out  dd 0 ;+112
1338 IgorA 376
.get_mouse_flag dd 0 ;+116
377
 
1467 IgorA 378
;---------------------------------------------------------------------
379
align 4
380
OpenDialog_data:
381
.type			dd 0
382
.procinfo		dd procinfo	;+4
383
.com_area_name	dd communication_area_name	;+8
384
.com_area		dd 0	;+12
1592 IgorA 385
.opendir_path		dd plugin_path ;+16
386
.dir_default_path	dd default_dir ;+20
1467 IgorA 387
.start_path		dd file_name ;+24 путь к диалогу открытия файлов
388
.draw_window	dd draw_window	;+28
389
.status 		dd 0	;+32
390
.openfile_path	dd openfile_path	;+36 путь к открываемому файлу
391
.filename_area	dd filename_area	;+40
392
.filter_area	dd Filter
1592 IgorA 393
.x:
394
.x_size 		dw 420 ;+48 ; Window X size
395
.x_start		dw 10 ;+50 ; Window X position
396
.y:
397
.y_size 		dw 320 ;+52 ; Window y size
398
.y_start		dw 10 ;+54 ; Window Y position
1467 IgorA 399
 
1592 IgorA 400
default_dir db '/rd/1',0 ;директория по умолчанию
401
 
1467 IgorA 402
communication_area_name:
403
	db 'FFFFFFFF_open_dialog',0
404
open_dialog_name:
405
	db 'opendial',0
406
communication_area_default_path:
1468 IgorA 407
	db '/rd/1/File managers/',0
1467 IgorA 408
 
409
Filter:
410
dd Filter.end - Filter.1
411
.1:
412
db 'ASM',0
413
db 'CPP',0
414
db 'INC',0
415
db 'INI',0
416
db 'TXT',0
417
db 'H',0
418
db 'HTM',0
419
db 'HTML',0
420
.end:
421
db 0
422
 
423
TED_PANEL_NULL	 equ 0 ;нет открытой панели
424
TED_PANEL_FIND	 equ 1 ;панель поиска
1457 IgorA 425
TED_PANEL_SYNTAX equ 2 ;панель выбора файлов подсветки
426
TED_PANEL_WIDTH  equ 150 ;ширина панели
1338 IgorA 427
 
1467 IgorA 428
count_of_dir_list_files equ 15 ;максимальное число файлов синтаксиса показываемых в окне элемента tree1
1338 IgorA 429
 
1449 IgorA 430
;------------------------------------------------------------------------------
431
struct TexSelect
432
  x0 dd ?
433
  y0 dd ?
434
  x1 dd ?
435
  y1 dd ?
436
ends
437
;------------------------------------------------------------------------------
438
align 4
439
tedit0: ;структура текстового редактора
440
	.wnd BOX 0,50,440,150 ;+ 0
441
	.rec BOX 30,23,7,10   ;+16
1456 IgorA 442
	.drag_m db 0 ;+32 выделение от мыши
443
	.drag_k db 0 ;+33 выделение от клавиатуры
444
	.sel  TexSelect 0,0,0,0 ;+34 структура выделения
445
	.seln TexSelect ;+50 дополнительная структура выделения
1467 IgorA 446
	.tex	  dd 0 ;+66 text memory pointer
447
	.tex_1	  dd 0 ;+70 text first symbol pointer
1457 IgorA 448
	.tex_end  dd 0 ;+74 text end memory pointer
1467 IgorA 449
	.cur_x	  dd 0 ;+78 координата x курсора
450
	.cur_y	  dd 0 ;+82 координата y курсора
1457 IgorA 451
	.max_chars dd maxChars ;+86 максимальное число символов в одном документе
1456 IgorA 452
	.count_colors_text dd 1 ;+90 колличество цветов текста
453
	.count_key_words   dd 0 ;+94 колличество ключевых слов
1467 IgorA 454
	.color_cursor	   dd 0x808080 ;+98 цвет курсора
455
	.color_wnd_capt    dd	  0x80 ;+102 цвет полей вокруг окна
456
	.color_wnd_work    dd	   0x0 ;+106 цвет фона окна
1457 IgorA 457
	.color_wnd_bord    dd 0xd0d0d0 ;+110 цвет текста на полях
1467 IgorA 458
	.color_select	   dd 0x208080 ;+114 цвет выделения
1457 IgorA 459
	.color_cur_text    dd 0xff0000 ;+118 цвет символа под курсором
460
	.color_wnd_text    dd 0xffff00 ;+122 цвет текста в окне
1467 IgorA 461
	.syntax_file	   dd 0 ;+126 указатель на начало файла синтаксиса
1457 IgorA 462
	.syntax_file_size  dd maxSyntaxFileSize ;+130 максимальный размер файла синтаксиса
1467 IgorA 463
	.text_colors	   dd 0 ;+134 указатель на массив цветов текста
464
	.help_text_f1	   dd 0 ;+138 указатель на текст справки (по нажатии F1)
465
	.help_id	   dd -1 ;+142 идентификатор для справки
1457 IgorA 466
	.key_words_data    dd 0 ;+146 указатель на структуры ключевых слов TexColViv
467
	.tim_ch      dd ? ;+150 количество изменений в файле
468
	.tim_undo    dd ? ;+154 количество отмененных действий
469
	.tim_ls      dd ? ;+158 время последнего сохранения
470
	.tim_co      dd ? ;+162 время последней цветовой разметки
471
	.el_focus    dd el_focus ;+166 указатель на переменную элемента в фокусе
472
	.err_save    db 0 ;+170 ошибка сохранения файла
473
	.panel_id    db 0 ;+171 номер открытой панели
1456 IgorA 474
	.key_new     db 0 ;+172 символ, который будет добавлятся с клавиатуры
475
	.symbol_new_line db 20 ;+173 символ завершения строки
1467 IgorA 476
	.scr_w	     dd wScr ;+174 вертикальный скроллинг
477
	.scr_h	     dd hScr ;+178 горизонтальный скроллинг
1457 IgorA 478
	.arr_key_pos dd 0 ;+182 указатель на массив позиций ключевых слов
479
	.buffer      dd buf ;+186 указатель на буфер копирования/вставки
480
	.buffer_find dd buf_find ;+190 указатель на буфер для поиска
481
	.cur_ins     db 1 ;+194 режим работы курсора (обычный или замена)
482
	.mode_color  db 1 ;+195 режим выделения слов цветом (0-выкл. 1-вкл.)
483
	.mode_invis  db 0 ;+196 режим показа непечатаемых символов
484
	.gp_opt      db 0 ;+197 опции возвращаемые функцией ted_get_pos_by_cursor
485
	.fun_on_key_ctrl_o dd ted_but_open_file ;+198 указатель на функцию вызываемую при нажатии Ctrl+O (открытие файла)
1467 IgorA 486
	.fun_on_key_ctrl_f dd ted_but_find	;+202 ... Ctrl+F (вызова/скрытия панели поиска)
487
	.fun_on_key_ctrl_n dd ted_but_new_file	;+206 ... Ctrl+N (создание нового документа)
1457 IgorA 488
	.fun_on_key_ctrl_s dd 0 ;+210 ... Ctrl+S
1467 IgorA 489
	.buffer_size	   dd BUF_SIZE ;+214 размер буфера копирования/вставки
490
	.fun_find_err	   dd ted_on_find_err ;+218 указатель на функцию вызываемую если поиск закончился неудачно
2707 IgorA 491
	.fun_init_synt_err dd 0   ;+222
1457 IgorA 492
	.fun_draw_panel_buttons dd draw_but_toolbar  ;+226 указатель на функцию рисования панели с кнопками
1467 IgorA 493
	.fun_draw_panel_find	dd draw_panel_find   ;+230 указатель на функцию рисования панели поиска
494
	.fun_draw_panel_syntax	dd draw_panel_syntax ;+234 указатель на функцию рисования панели синтаксиса
495
	.fun_save_err		dd ted_save_err_msg  ;+238 указатель на функцию вызываемую если сохранение файла закончилось неудачно
1464 IgorA 496
	.increase_size dd 200 ;+242 число символов на которые будет увечиваться память при нехватке
497
	.ptr_free_symb dd ?   ;+246 используется внутри элемента для ускорения вставки текста
1449 IgorA 498
;------------------------------------------------------------------------------
499
 
1456 IgorA 500
conv_tabl rb 128 ; таблица для конвертирования scan-кода в ascii-код
1457 IgorA 501
buf db BUF_SIZE dup(0)
1456 IgorA 502
 
1338 IgorA 503
el_focus dd 0
504
mouse_dd dd 0
505
tree1 tree_list 264,count_of_dir_list_files+2, tl_key_no_edit+tl_draw_par_line+tl_list_box_mode,\
1457 IgorA 506
    16,16, 0x8080ff,0x0000ff,0xffffff, 0,70,TED_PANEL_WIDTH-17,120, 0,0,0, el_focus,\
1338 IgorA 507
    ws_dir_lbox,0
508
 
509
;dir_list memory
510
tree_file_struct:
511
  dd 1
512
  dd 0,0,count_of_dir_list_files
513
  dd dir_mem
514
  db 0
515
  dd file_name ;sys_path
516
 
517
dir_mem rb 32+304*count_of_dir_list_files
518
 
1343 IgorA 519
if lang eq ru
520
 
1338 IgorA 521
menu_text_area:
522
db 'Файл',0
523
.1:
524
db 'Создать',0
525
db 'Открыть',0
526
db 'Сохранить',0
527
db 'Выход',0
528
.end:
529
db 0
530
 
531
msgbox_1:
532
  dw 0
533
  db 'Внимание',0 ;+2 = +MB_TEXT_OFFSET
534
  db 'Файл большой, потому открыт не весь.',13
535
  db '  1. При его сохранении будут потеряны "не открывшиеся" символы.',13
536
  db '  2. В документ нельзя добавлять текст, т. к. память занята.',0
537
  db 'Я понял(а)',0 ;button1
538
  db 0
539
msgbox_2:
540
  db 3,0
1467 IgorA 541
  db 'Внимание',0
1338 IgorA 542
  db 'Сохранить изменения в файле?',0
543
  db 'Сохранить',0
544
  db 'Не сохранять',0
545
  db 'Отмена',0
546
  db 0
547
msgbox_2_funct:
548
  dd On_SaveAndNewFile
549
  dd On_NewFile
550
  dd 0
551
 
552
msgbox_3:
553
  db 1,0
1467 IgorA 554
  db 'Внимание',0
1338 IgorA 555
  db 'Ошибка при открытии файла с цветовыми настройками!',13,\
556
     'Потому выделение слов цветом не возможно.',13,\
1343 IgorA 557
     '  (код ошибки ='
1338 IgorA 558
  .err: db '?'
559
  db ')',0
560
  db 'Закрыть',0
561
  db 0
562
 
563
msgbox_4:
564
  db 1,0
1467 IgorA 565
  db 'Внимание',0
1338 IgorA 566
  db 'Ошибка при открытии файла!',13,\
567
     'Возможно имя файла введено не правильно.',13,\
1343 IgorA 568
     '  (код ошибки ='
1338 IgorA 569
  .err: db '?'
570
  db ')',0
571
  db 'Закрыть',0
572
  db 0
573
 
574
msgbox_5:
575
  db 3,0
1467 IgorA 576
  db 'Внимание',0
1338 IgorA 577
  db 'Сохранить изменения в файле?',0
578
  db 'Не сохранять',0
579
  db 'Отмена',0
580
  db 0
581
msgbox_5_funct:
1456 IgorA 582
  dd but_no_msg_OpenFile
1338 IgorA 583
  dd 0
584
 
585
msgbox_6:
586
  db 1,0
1467 IgorA 587
  db 'Внимание',0
1338 IgorA 588
  db 'Ошибка при сохранении файла!',13,\
589
     'Возможно имя файла введено не правильно.',13,\
1343 IgorA 590
     '  (код ошибки ='
1338 IgorA 591
  .err: db '?'
592
  db ')',0
593
  db 'Закрыть',0
594
  db 0
595
msgbox_7:
596
  db 1,0
1467 IgorA 597
  db 'Текст не найден',0
1338 IgorA 598
  db 'Достигнут конец документа.',13,\
599
     'Попробуйте перейти в начало документа',13,\
600
     'или изменить запрос и повторить поиск.',0
601
  db 'Закрыть',0
602
  db 0
603
msgbox_8:
604
  db 3,0
1467 IgorA 605
  db 'Внимание',0
1338 IgorA 606
  db 'Для выхода завершите работу с файлом.',13,\
607
     'Попробуйте сохранить изменения в файле',13,\
608
     'или начать новый пустой.',0
609
  db 'Отмена',0
610
  db 0
1467 IgorA 611
msgbox_9:
612
  db 3,0
613
  db 'Внимание',0
1468 IgorA 614
  db 'Не открылся ',39,'диалог открытия файла',39,'.',13
615
  .fdp:
616
  rb 100
617
  db 0
1467 IgorA 618
  db 'Закрыть',0
619
  db 0
2102 IgorA 620
msgbox_10:
621
  db 1,0
622
  db 'Внимание',0
623
  db 'Вы используете старую версию библиотеки ',39,'box_lib.obj',39,'.',13,\
624
	'Попробуйте найти библиотеку в которой',13,\
625
	'элемент ',39,'t_edit',39,' имеет версию 3.',0
626
  db 'Закрыть',0
627
  db 0
1338 IgorA 628
 
1467 IgorA 629
txtFile db 'Файл:',0
1338 IgorA 630
txtFindCapt db 'Поиск',0
631
txtFindNext db 'Найти далее',0
632
txtFormatCapt db 'Формат',0
633
txtFormatApply db 'Применить',0
1343 IgorA 634
 
635
else
636
 
637
menu_text_area:
638
db 'File',0
639
.1:
640
db 'New',0
641
db 'Open',0
642
db 'Save',0
643
db 'Exit',0
644
.end:
645
db 0
646
 
647
msgbox_1:
648
  dw 0
649
  db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
650
  db 'File is large, because not all open.',13
651
  db '  1. If you save it will lose "not opened" characters.',13
652
  db '  2. The document can not add text, because the memory is busy.',0
653
  db 'Ok',0 ;button1
654
  db 0
655
msgbox_2:
656
  db 3,0
1467 IgorA 657
  db 'Warning',0
1343 IgorA 658
  db 'Save changes to the file?',0
659
  db 'Save',0
660
  db 'Discard',0
661
  db 'Cancel',0
662
  db 0
663
msgbox_2_funct:
664
  dd On_SaveAndNewFile
665
  dd On_NewFile
666
  dd 0
667
 
668
msgbox_3:
669
  db 1,0
1467 IgorA 670
  db 'Warning',0
1343 IgorA 671
  db 'Error opening the file with the color settings!',13,\
672
     'Because color selection of words is not possible.',13,\
673
     '  (error code ='
674
  .err: db '?'
675
  db ')',0
676
  db 'Close',0
677
  db 0
678
 
679
msgbox_4:
680
  db 1,0
1467 IgorA 681
  db 'Warning',0
1343 IgorA 682
  db 'Error opening file!',13,\
683
     'Maybe the file name is not entered correctly.',13,\
684
     '  (error code ='
685
  .err: db '?'
686
  db ')',0
687
  db 'Close',0
688
  db 0
689
 
690
msgbox_5:
691
  db 3,0
1467 IgorA 692
  db 'Warning',0
1343 IgorA 693
  db 'Save changes to the file?',0
694
  db 'Discard',0
695
  db 'Cancel',0
696
  db 0
697
msgbox_5_funct:
1456 IgorA 698
  dd but_no_msg_OpenFile
1343 IgorA 699
  dd 0
700
 
701
msgbox_6:
702
  db 1,0
1467 IgorA 703
  db 'Warning',0
1343 IgorA 704
  db 'Error saving file!',13,\
705
     'Maybe the file name is not entered correctly.',13,\
706
     '  (error code ='
707
  .err: db '?'
708
  db ')',0
709
  db 'Close',0
710
  db 0
711
msgbox_7:
712
  db 1,0
1467 IgorA 713
  db 'Text not found.',0
1343 IgorA 714
  db 'Reached end of the document.',13,\
715
     'Try to go to the beginning of the document',13,\
716
     'or change the query and search again.',0
717
  db 'Close',0
718
  db 0
719
msgbox_8:
720
  db 3,0
1467 IgorA 721
  db 'Warning',0
1343 IgorA 722
  db 'To quit, quit the file.',13,\
723
     'Try to keep changes to a file',13,\
724
     'or start a new blank file.',0
725
  db 'Cancel',0
726
  db 0
1467 IgorA 727
msgbox_9:
728
  db 3,0
729
  db 'Warning',0
1468 IgorA 730
  db 'Error run ',39,'open file dialog',39,'.',13
731
  .fdp:
732
  rb 100
733
  db 0
1467 IgorA 734
  db 'Close',0
735
  db 0
2102 IgorA 736
msgbox_10:
737
  db 1,0
738
  db 'Warning',0
739
  db 'You are using an older version of the library ',39,'box_lib.obj',39,'.',13,\
740
	'Try to find a library in which the element',13,\
741
	39,'t_edit',39,' has a version 3.',13,0
742
  db 'Close',0
743
  db 0
1343 IgorA 744
 
1467 IgorA 745
txtFile db 'File:',0
1343 IgorA 746
txtFindCapt db 'Search',0
747
txtFindNext db 'Find next',0
748
txtFormatCapt db 'Format',0
749
txtFormatApply db 'Apply',0
750
 
751
end if
1338 IgorA 752
 
753
KM_SHIFT equ 0x00010000
754
KM_CTRL equ 0x00020000
755
KM_ALT equ 0x00040000
756
KM_NUMLOCK equ 0x00080000
757
 
758
; KEY CODES
759
KEY_F1 equ 0x0000003B
760
KEY_F2 equ 0x0000003C
761
KEY_F3 equ 0x0000003D
762