Subversion Repositories Kolibri OS

Rev

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

Rev Author Line No. Line
1432 mario79 1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2
;Basic macros for use EditBox                             ;
3
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
4
ed_width        equ [edi]               ;ширина компонента
5
ed_left         equ [edi+4]             ;положение по оси х
6
ed_top          equ [edi+8]             ;положение по оси у
7
ed_color        equ [edi+12]            ;цвет фона компонента
8
shift_color     equ [edi+16]            ;=0x6a9480 для примера возьем желеный цвет бокса
9
ed_focus_border_color   equ [edi+20]    ;цвет рамки компонента
10
ed_blur_border_color    equ [edi+24]    ;цвет не активного компонента
11
ed_text_color   equ [edi+28]            ;цвет текста
12
ed_max          equ [edi+32]                    ;кол-во символов которые можно максимально ввести
13
ed_text         equ [edi+36]                    ;указатель на буфер
14
ed_mouse_variable 	equ [edi+40]	; указатель на переменную для бокса/группы
15
ed_flags        equ [edi+44]            ;флаги
16
bp_flags	equ [ebp+44]		;в некоторых процедурах edi используется, взамен указатель храниться в ebp
17
ed_size equ [edi+48]                    ;кол-во символов
18
bp_size equ [ebp+48]			;кол-во симвполов, для адресации испльзуется ebpб edi занят
19
ed_pos  equ [edi+52]                    ;позиция курсора
20
ed_offset       equ [edi+56]            ;смещение
21
cl_curs_x       equ [edi+60]            ;предыдущее координата курсора по х
22
cl_curs_y       equ [edi+64]            ;предыдущее координата курсора по у
23
ed_shift_pos    equ [edi+68]            ;положение курсора
24
ed_shift_pos_old equ [edi+72]           ;старое положение курсора
25
 
26
ed_struc_size=76
27
 
28
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
29
;Bit mask from editbox
30
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
31
ed_figure_only= 1000000000000000b   ;одни символы
32
ed_always_focus= 100000000000000b
33
ed_focus=                     10b   ;фокус приложения
3089 IgorA 34
ed_pass=                       1b   ;поле с паролем
1432 mario79 35
ed_shift_on=                1000b   ;если не установлен -значит впервые нажат shift,если был установлен, значит мы уже что - то делали удерживая shift
36
ed_shift_on_off=1111111111110111b
37
ed_shift=                    100b   ;включается при нажатии на shift т.е. если нажимаю
38
ed_shift_off=   1111111111111011b
39
ed_shift_bac=              10000b   ;бит для очистки выделеного shift т.е. при установке говорит что есть выделение
40
ed_shift_bac_cl=1111111111101111b   ;очистка при удалении выделения
41
ed_shift_cl=    1111111111100011b
42
ed_shift_mcl=   1111111111111011b
43
ed_left_fl=               100000b
44
ed_right_fl=    1111111111011111b
45
ed_offset_fl=            1000000b
46
ed_offset_cl=   1111111110111111b
47
ed_insert=              10000000b
48
ed_insert_cl=   1111111101111111b
49
ed_mouse_on =          100000000b
50
ed_mous_adn_b=         100011000b
51
ed_mouse_on_off=1111111011111111b
52
ed_height=14 ; высота
53
 
54
struc  edit_box width,left,top,color,shift_color,focus_border_color,\
55
       blur_border_color,text_color,max,text,mouse_variable,flags,size,pos
56
{
57
.width dd width
58
.left  dd left
59
.top   dd top
60
.color dd color
61
.shift_color dd shift_color
62
.focus_border_color dd focus_border_color
63
.blur_border_color  dd blur_border_color
64
.text_color dd text_color
65
.max  dd max
66
.text dd text
67
.mouse_variable dd mouse_variable
68
.flags  dd flags+0
69
.size   dd size+0
70
.pos    dd pos+0
71
.offset dd 0
72
.cl_curs_x dd 0
73
.cl_curs_y dd 0
74
.shift     dd 0
75
.shift_old dd 0
76
}
77
 
78
macro edit_boxes_set_sys_color start,end,color_table
79
{
80
        mov     edi,start
81
        mov     ecx,((end-start)/ed_struc_size)
82
        mov     esi,color_table
83
@@:
2159 IgorA 84
        mov     eax,dword [esi+36] ;цвет графики в окне (разделительные линии и т.п.)
85
        mov     ebx,dword [esi+20] ;цвет рабочей области окна
1432 mario79 86
        push	dword eax
87
	pop     dword ed_focus_border_color
88
        shr     bh,1
89
        shr     bl,1
90
        shr     ah,1
91
        shr     al,1
92
        add     ah,bh
93
        add     al,bl
94
        ror     eax,16
95
        ror     ebx,16
96
        shr     bl,1
97
        shr     al,1
98
        add     al,bl
99
        ror     eax,16
100
	mov	dword ed_blur_border_color,eax
101
	mov	dword shift_color,eax
2159 IgorA 102
	push 	dword [esi+32] ;цвет текста в рабочей области окна
103
	pop 	dword ed_text_color
1432 mario79 104
        add     edi,ed_struc_size
105
        loop    @b
106
}
3178 IgorA 107
 
108
 
1432 mario79 109
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
110
;Basic macros for use CheckBox                            ;
3178 IgorA 111
;Last change 17.01.2013                                   ;
1432 mario79 112
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3178 IgorA 113
ch_text_margin equ [edi+8] ;=4 расстояние от прямоугольника чек бокса до надписи
1640 Lrz 114
ch_color equ [edi+12]      ;цвет внутри checkbox
115
ch_border_color equ [edi+16] ; or [edi+4] ;цвет рамки checkbox ее можно задать самостоятельно
116
ch_text_color   equ [edi+20] ;[edi+4]  ;цвет текста
117
ch_text_ptr     equ [edi+24] ;указатель на начало текстовой строки
3178 IgorA 118
ch_flags equ [edi+28]      ;флаги
1432 mario79 119
 
1682 lrz 120
ch_struc_size=36		;размер структуры
121
ch_flag_en=10b 			;флаг установленного чек бокса.
122
ch_flag_top=0x0			;флаг расположения текста вверху т.е. 3-й бит
123
ch_flag_middle=100b		;флаг расположения текста в центре т.е. 4-й бит.
124
ch_flag_bottom=1000b		;флаг расположения текста в низу т.е. по умолчанию принимается значение внизу т.е. отсуствие 3-го и 4-го бита
125
 
126
2ch_left_s	equ [ebp]	;кордината начала рисования по х
127
2ch_top_s	equ [ebp+4]	;координата начала рисования по у
128
2ch_text_margin equ [ebp+8] 	;=4 расстояние от прямоугольника чек бокса до надписи
129
2ch_color 	equ [ebp+12]	;цвет внутри checkbox
130
2ch_border_color	equ [ebp+16] 	; or [edi+4] ;цвет рамки checkbox ее можно задать самостоятельно
131
2ch_text_color	equ [ebp+20] 	;[edi+4]  ;цвет текста
132
2ch_text_ptr	equ [ebp+24] 	;указатель на начало текстовой строки
133
2ch_flags	equ [ebp+28]	;флаги
134
2ch_sz_str	equ [ebp+32]	;длинна строки, вычисляется при инициализации компонента
135
 
136
struc check_box2 left_s,top_s,ch_text_margin,color,border_color,text_color,text,flags
137
{				;структура параметров для чек бокса
138
.left_s: 	dd left_s	;+0 положение по х dw + размер dw
139
.top_s:  	dd top_s	;+4 положение по у dw + размер dw
140
.ch_text_margin: dd ch_text_margin ;расстояние от прямоугольника чек бокса до надписи
141
.color:   	dd color	;цвет внутри чекбокса
142
.border_color: 	dd border_color	;цвет рамки
143
.text_color:	dd text_color	;цвет надписи
144
.text: 		dd text		;адрес в коде программы где расположен текст
145
.flags:		dd flags+0	;флаги
146
.size_of_str:	dd 0x0		;длинна строки, вычисляется при инициализации компонента
147
}
148
 
149
;Макрос проверки щелчка мышки над группой checkboxes.
3178 IgorA 150
macro init_checkboxes2 start,end_cb
1682 lrz 151
{
3178 IgorA 152
if start+ch_struc_size eq end_cb
153
	;когда один элемент
154
	push    start			;указатель на checkbox
155
	call	[init_checkbox]	;настройка checkbox'а
156
else
157
	;когда несколько элементов
1682 lrz 158
	mov     ebp,start
3178 IgorA 159
	mov     ecx,((end_cb-start)/ch_struc_size)
1682 lrz 160
@@:
161
	push    ebp			;указатель на первый checkbox
3178 IgorA 162
	call	[init_checkbox]	;настройка checkbox'ов
1682 lrz 163
	add     ebp,ch_struc_size
164
	loop    @b
3178 IgorA 165
end if
1682 lrz 166
}
167
 
168
;Макрос проверки мышки группы checkboxes.
3178 IgorA 169
macro checkboxes_mouse2 start,end_cb
1682 lrz 170
{
3178 IgorA 171
if start+ch_struc_size eq end_cb
172
	;когда один элемент
173
	push    start			;указатель на checkbox
174
	call	[check_box_mouse]	;макрос проверки мышки над checkbox'ом
175
else
176
	;когда несколько элементов
1682 lrz 177
	mov     ebp,start
3178 IgorA 178
	mov     ecx,((end_cb-start)/ch_struc_size)
1682 lrz 179
@@:
180
	push    ebp			;указатель на первый checkbox
3178 IgorA 181
	call	[check_box_mouse]	;макрос проверки мышки над checkbox'ами
1682 lrz 182
	add     ebp,ch_struc_size
183
	loop    @b
3178 IgorA 184
end if
1682 lrz 185
}
186
 
187
;Макрос отрисовки группы checkboxes.
3178 IgorA 188
macro checkboxes_draw2 start,end_cb
1682 lrz 189
{
3178 IgorA 190
if start+ch_struc_size eq end_cb
191
	;когда один элемент
192
	push    start			;указатель на checkbox
193
	call	[check_box_draw]	;нарисовать checkbox
194
else
195
	;когда несколько элементов
1682 lrz 196
	mov     ebp,start
3178 IgorA 197
	mov     ecx,((end_cb-start)/ch_struc_size)
1682 lrz 198
@@:
199
	push    ebp			;указатель на первый checkbox
3178 IgorA 200
	call	[check_box_draw]	;нарисовать checkbox'ы
1682 lrz 201
	add     ebp,ch_struc_size
202
	loop    @b
3178 IgorA 203
end if
1682 lrz 204
}
205
 
206
macro check_boxes_set_sys_color2 start,end,color_table
207
{
208
	mov     ebp,start
209
	mov     ecx,((end-start)/ch_struc_size)
210
	mov     esi,color_table
211
@@:
212
	push    dword [esi+32] 		;цвет текста в рабочей области окна
1685 lrz 213
	or	dword [esp],0x80000000	;необходимо для вывода ASCIIZ строк
214
	pop     dword 2ch_text_color
1682 lrz 215
	push    dword [esi+36] 		;цвет графики в окне (разделительные линии и т.п.)
1685 lrz 216
	pop     dword 2ch_border_color
1682 lrz 217
	add     ebp,ch_struc_size
218
	loop    @b
219
}
220
 
221
 
222
 
223
 
224
 
225
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1432 mario79 226
;Basic macros for use OptionBox                           ;
227
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
228
 
229
struc option_box point_gr,left,top,op_text_margin,op_size,color,border_color,text_color,text,op_text_length,flags
230
{        ;структура параметров для чек бокса
231
op_flag_en=10b
232
.option_group: dd point_gr
233
.left: dw left       ;+0 ;положение по х
234
.top:  dw top        ;положение по у
235
.ch_text_margin:  dd op_text_margin ;расстояние от прямоугольника чек бокса до надписи
236
.ch_size: dd op_size ;размер квадрата чек бокса, для примера 12
237
.color:   dd color   ;цвет внутри чекбокса
238
.border_color: dd border_color ;цвет рамки
239
.text_color:   dd text_color   ;цвет надписи
240
.text: dd text                 ;адрес в коде программы где расположен текст
241
.ch_text_length: dd op_text_length ;длинна строки с символами
242
.flags: dd flags+0   ; флаги
243
}
244
 
2159 IgorA 245
;op_struc_size equ
1476 IgorA 246
option_group equ [edi]
247
op_left equ [edi+4]    ;координата начала рисования по х
248
op_top equ [edi+6]     ;координата начала рисования по у
249
op_text_margin equ [edi+8]      ;=4 расстояние от прямоугольника чек бокса до надписи
250
op_size equ [edi+12]             ;12 размер квадрата чек бокса
251
op_color equ [edi+16]
2159 IgorA 252
op_border_color equ [edi+20] ; or [edi+4] ;цвет рамки optionbox ее можно задать самостоятельно
1476 IgorA 253
op_text_color equ   [edi+24];[edi+4]  ;цвет текста
254
op_text_ptr equ [edi+28]    ;указатель на начало текстовой строки
255
op_text_length equ [edi+32]
256
op_flags equ [edi+36]       ;флаги
257
 
2159 IgorA 258
macro option_boxes_set_sys_color color_table,group
259
{
260
	mov	ecx,group
261
        mov	esi,color_table
262
        mov	edi,[ecx]
263
        mov	eax,[esi+24] ;цвет кнопки в рабочей области окна
264
        mov	ebx,[esi+28] ;цвет текста на кнопке
265
@@:
266
	mov	op_border_color,eax
267
	mov	op_color,ebx
268
	push	dword [esi+32] ;цвет текста в рабочей области окна
269
	pop	dword op_text_color
270
        add     ecx,4
271
        mov     edi,[ecx]
272
	cmp	edi,0
273
        jne	@b
274
}
1457 IgorA 275
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
276
;Basic macros for use TreeList                            ;
277
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
278
 
1432 mario79 279
struc tree_list info_size,info_max_count,style, img_cx,img_cy,\
280
    col_bkg,col_zag,col_txt, box_l,box_t,box_w,box_h, capt_cy,info_capt_offs,\
281
    info_capt_len,el_focus, p_scrol,on_press {
282
  .data_info	dd 0
283
  .info_size	dw info_size
284
  .info_max_count dd info_max_count
285
  .style	    dd style
286
  .data_nodes	dd 0
287
  .data_img	 dd 0
288
  .img_cx	   dw img_cx
289
  .img_cy	   dw img_cy
290
  .data_img_sys	 dd 0
291
  .ch_tim		  dd 0
292
  .ls_tim		  dd 0
293
  .tim_undo	 dd 0
294
  .cur_pos	  dd 0
295
  .col_bkg	  dd col_bkg
296
  .col_zag	  dd col_zag
297
  .col_txt	  dd col_txt
298
  .box_left   dd box_l
299
  .box_top    dd box_t
300
  .box_width  dd box_w
301
  .box_height dd box_h
302
  .capt_cy	   dw capt_cy
303
  .info_capt_offs dw info_capt_offs
304
  .info_capt_len dw info_capt_len
305
  .el_focus dd el_focus
306
  .p_scrol  dd p_scrol
307
  rb 4
308
  .on_activate dd 0
309
  .on_press dd on_press
310
}
311
 
1449 IgorA 312
tl_info_size  equ  word[edi +4] ;размер данных выделяемых для каждого узла (пользовательськие данные + текст для подписи)
313
tl_info_max_count equ dword[edi+6] ;максимальное количество узлов, которые можно добавить в элемент
314
tl_style      equ dword[edi+10] ;стили элемента
315
tl_data_nodes equ dword[edi+14] ;указатель на структуры узлов
316
tl_data_img   equ dword[edi+18] ;указатель на изображения с иконками узлов
317
tl_img_cx     equ  word[edi+22] ;ширина иконок
318
tl_img_cy     equ  word[edi+24] ;высота иконок
319
tl_data_img_sys equ dword[edi+26] ;указатель на системные изображения (стрелки, плюсики)
320
tl_ch_tim     equ dword[edi+30] ;количество изменений в файле
321
tl_tim_undo   equ dword[edi+38] ;количество отмененных действий
322
tl_cur_pos    equ dword[edi+42] ;позиция курсора
323
tl_col_bkg    equ dword[edi+46] ;цвет фона
324
tl_col_zag    equ dword[edi+50] ;цвет заголовка
325
tl_col_txt    equ dword[edi+54] ;цвет текста
326
tl_box_left   equ dword[edi+58]
327
tl_box_top    equ dword[edi+62]
328
tl_box_width  equ dword[edi+66]
329
tl_box_height equ dword[edi+70]
330
tl_capt_cy    equ  word[edi+74] ;высота подписи
331
tl_info_capt_offs equ word[edi+76] ;сдвиг для начала текста (подписи узла)
332
tl_info_capt_len equ word[edi+78] ;длинна текста подписи узла (если = 0 то до конца структуры)
333
tl_el_focus   equ dword[edi+80] ;указатель на структуру элемента в фокусе
334
tl_p_scrol    equ dword[edi+84] ;указатель на структуру скроллинга
335
tl_on_press   equ dword[edi+96] ;указатель на функцию, которая вызывается при нажатии Enter
336
 
337
;data_info	 dd ? ;+ 0 указатель на основные даные
338
;ls_tim		dd ? ;+34 время последнего сохранения
339
;on_activate dd ? ;+92 указатель на функцию при активировании узла
340
 
1432 mario79 341
;константы стиля
342
tl_key_no_edit   equ   1b ;элемент нельзя редактировать на клавиатуре (изменять уровни, удалять)
343
tl_draw_par_line equ  10b ;рисовать линии к родительскому узлу
344
tl_list_box_mode equ 100b ;стиль не отображает уровни (как в ListBox все одного уровня)
345
 
346
;константы для функций
347
tl_err_save_memory_size equ  10b ;не хватает памяти для сохранения элемента
348
tl_err_load_caption     equ   1b ;в памяти нет заголовка 'tree'
349
tl_err_load_info_size   equ 100b ;не совпадает размер информационной структуры при открытии
350
tl_load_mode_add        equ 0x20000 ;опция считывания в режиме добавления информации
351
tl_save_load_heder_size equ 26 ;размер заголовка для записи/чтения элементов
1619 IgorA 352
tl_offs_box equ 58 ;начало BOX структуры для tree_list
1457 IgorA 353
 
354
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
355
;Basic macros for use TextEditor                          ;
356
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
357
 
358
ted_wnd_l equ dword[edi+ 0] ;окно редактора: отступ слева
359
ted_wnd_t equ dword[edi+ 4] ;окно редактора: отступ сверху
360
ted_wnd_w equ dword[edi+ 8] ;окно редактора: ширина
361
ted_wnd_h equ dword[edi+12] ;окно редактора: высота
362
ted_rec_l equ dword[edi+16] ;ширина панели в окне
363
ted_rec_t equ dword[edi+20] ;высота панели в окне
364
ted_rec_w equ dword[edi+24] ;ширина символа (знакоместа) в окне
365
ted_rec_h equ dword[edi+28] ;высота символа (знакоместа) в окне
366
ted_drag_m equ byte[edi+32] ;выделение от мыши
367
ted_drag_k equ byte[edi+33] ;выделение от клавиатуры
368
ted_sel_x0 equ dword[edi+34] ;координата выделения x0
369
ted_sel_y0 equ dword[edi+38] ;координата выделения y0
370
ted_sel_x1 equ dword[edi+42] ;координата выделения x1
371
ted_sel_y1 equ dword[edi+46] ;координата выделения y1
372
;запасные координаты выделения
373
ted_seln_x0 equ dword[edi+50]
374
ted_seln_y0 equ dword[edi+54]
375
ted_seln_x1 equ dword[edi+58]
376
ted_seln_y1 equ dword[edi+62]
377
 
378
ted_tex     equ dword[edi+66] ;указатель на память для хранения текста
379
ted_tex_1   equ dword[edi+70] ;указатель на 1-ю стркутру символа
380
ted_tex_end equ dword[edi+74] ;указатель на последнюю структуру символа
381
ted_cur_x   equ dword[edi+78] ;координата x курсора
382
ted_cur_y   equ dword[edi+82] ;координата y курсора
383
ted_max_chars equ dword[edi+86] ;максимальное число символов в одном документе
384
ted_colors_text_count equ dword[edi+90] ;колличество цветов текста
385
ted_key_words_count   equ dword[edi+94] ;колличество ключевых слов
386
ted_color_cursor   equ dword[edi+98] ;цвет курсора
387
ted_color_wnd_capt equ dword[edi+102] ;цвет полей вокруг окна
388
ted_color_wnd_work equ dword[edi+106] ;цвет фона окна
389
ted_color_wnd_bord equ dword[edi+110] ;цвет текста на полях
390
ted_color_select   equ dword[edi+114] ;цвет выделения
391
ted_color_cur_text equ dword[edi+118] ;цвет символа под курсором
392
ted_color_wnd_text equ dword[edi+122] ;цвет текста в окне
393
ted_syntax_file    equ dword[edi+126] ;указатель на начало файла синтаксиса
394
ted_syntax_file_size equ dword[edi+130] ;максимальный размер файла синтаксиса
395
ted_text_colors     equ dword[edi+134] ;указатель на массив цветов текста
396
ted_help_text_f1    equ dword[edi+138] ;указатель на текст справки (по нажатии F1)
397
ted_help_id         equ dword[edi+142] ;идентификатор для справки
398
ted_key_words_data  equ dword[edi+146] ;указатель на структуры ключевых слов TexColViv
399
ted_tim_ch          equ dword[edi+150] ;колличество изменений в файле
400
ted_tim_undo        equ dword[edi+154] ;колличество отмененных действий
401
ted_tim_ls          equ dword[edi+158] ;время последнего сохранения
402
ted_tim_co          equ dword[edi+162] ;время последней цветовой разметки
403
ted_el_focus        equ dword[edi+166] ;указатель на переменную элемента в фокусе
404
ted_err_save        equ  byte[edi+170] ;ошибка сохранения файла
405
ted_panel_id        equ  byte[edi+171] ;номер открытой панели
406
ted_key_new         equ  byte[edi+172] ;символ, который будет добавлятся с клавиатуры
407
ted_symbol_new_line equ  byte[edi+173] ;символ завершения строки
408
ted_scr_w           equ dword[edi+174] ;вертикальный скроллинг
409
ted_scr_h           equ dword[edi+178] ;горизонтальный скроллинг
410
ted_arr_key_pos     equ dword[edi+182] ;указатель на массив позиций ключевых слов
411
ted_buffer          equ dword[edi+186] ;указатель на буфер копирования/вставки
412
ted_buffer_find     equ dword[edi+190] ;указатель на буфер для поиска
413
ted_cur_ins         equ  byte[edi+194] ;режим работы курсора (обычный или замена)
414
ted_mode_color      equ  byte[edi+195] ;режим выделения слов цветом (0-выкл. 1-вкл.)
415
ted_mode_invis      equ  byte[edi+196] ;режим показа непечатаемых символов
416
ted_gp_opt          equ  byte[edi+197] ;опции возвращаемые функцией ted_get_pos_by_cursor
417
ted_fun_on_key_ctrl_o equ dword[edi+198] ;указатель на функцию вызываемую при нажатии Ctrl+O (открытие файла)
418
ted_fun_on_key_ctrl_f equ dword[edi+202] ;... Ctrl+F (вызова/скрытия панели поиска)
419
ted_fun_on_key_ctrl_n equ dword[edi+206] ;... Ctrl+N (создание нового документа)
420
ted_fun_on_key_ctrl_s equ dword[edi+210] ;... Ctrl+S
421
ted_buffer_size       equ dword[edi+214] ;размер буфера копирования/вставки
422
ted_fun_find_err      equ dword[edi+218] ;указатель на функцию вызываемую если поиск закончился неудачно
2707 IgorA 423
;ted_fun_init_synt_err equ dword[edi+222] ;указатель на функцию вызываемую при ошибочном открытии файла синтаксиса
1457 IgorA 424
ted_fun_draw_panel_buttons equ dword[edi+226] ;указатель на функцию рисования панели с кнопками
425
ted_fun_draw_panel_find    equ dword[edi+230] ;указатель на функцию рисования панели поиска
426
ted_fun_draw_panel_syntax  equ dword[edi+234] ;указатель на функцию рисования панели синтаксиса
427
ted_fun_save_err      equ dword[edi+238] ;указатель на функцию вызываемую если сохранение файла закончилось неудачно
1464 IgorA 428
ted_increase_size     equ dword[edi+242] ;число символов на которые будет увечиваться память при нехватке
429
ted_ptr_free_symb     equ dword[edi+246] ;указатель на свободную память, в которую можно добавлять символ (используется внутри элемента для ускорения вставки текста)
1457 IgorA 430
;------------------------------------------------------------------------------
431
ted_opt_ed_move_cursor equ 1 ;двигать курсор после добавления текста
432
ted_opt_ed_change_time equ 2 ;добавлять изменения при редактировании текста
433
ted_offs_sel  equ 34 ;смещение структуры sel
434
ted_offs_seln equ 50 ;смещение структуры seln
435
ted_offs_count_colors equ 90 ;смещение переменной колличества цветов
436
ted_offs_key_new equ 172
437
ted_offs_symbol_new_line equ 173 ;смещение символа новой строки
438
;------------------------------------------------------------------------------
439
 
440
 
441
 
442
; *** scroll bar constant ***
443
sb_offs_size_x   equ  0
444
sb_offs_start_x  equ  2
445
sb_offs_size_y   equ  4
446
sb_offs_start_y  equ  6
447
sb_offs_max_area equ 16
448
sb_offs_cur_area equ 20
449
sb_offs_position equ 24
1458 IgorA 450
sb_offs_bckg_col equ 28
451
sb_offs_frnt_col equ 32
452
sb_offs_line_col equ 36
1457 IgorA 453
sb_offs_redraw   equ 40
454
sb_offs_delta2   equ 46
455
sb_offs_all_redraw equ 80
456
;------------------------------------------------------------------------------