Subversion Repositories Kolibri OS

Rev

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