Subversion Repositories Kolibri OS

Rev

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