На главную ↑

Оглавление

Введение

Функции

Структура scrollbar

Введение

Скроллбар, используется при выводе информации, не помещающейся в окно. Может быть вертикальным и горизонтальным.

Функции

scrollbar_v_draw

Рисование вертикального скроллинга.

scrollbar_v_mouse

Эта функция должна вызыватся для вертикального скроллинга при движении мышей.

scrollbar_h_draw

Рисование горизонтального скроллинга.

scrollbar_h_mouse

Эта функция должна вызыватся для горизонтального скроллинга при движении мышей.

version_ch

Версия элемента

Структура scrollbar

Макроса для создания структуры для скроллбара нет. Потому данные для нее задаются вручную. Есть макрос use_scroll_bar он дает возможность понять какие данные нужны для скроллинга.

macro use_scroll_bar
{
scroll_bar:
sb_size_x     equ [edi]
sb_start_x    equ [edi+ 2]
sb_size_y     equ [edi+ 4]
sb_start_y    equ [edi+ 6]
sb_btn_high   equ [edi+ 8]
sb_type       equ [edi+12]
sb_max_area   equ [edi+16]
sb_cur_area   equ [edi+20]
sb_position   equ [edi+24]
sb_bckg_col   equ [edi+28]
sb_frnt_col   equ [edi+32]
sb_line_col   equ [edi+36]
sb_redraw     equ [edi+40]
sb_delta      equ [edi+44]
sb_delta2     equ [edi+46]
sb_r_size_x   equ [edi+48]
sb_r_start_x  equ [edi+50]
sb_r_size_y   equ [edi+52]
sb_r_start_y  equ [edi+54]
sb_m_pos      equ [edi+56]
sb_m_pos_2    equ [edi+60]
sb_m_keys     equ [edi+64]
sb_run_size   equ [edi+68]
sb_position2  equ [edi+72]
sb_work_size  equ [edi+76]
sb_all_redraw equ [edi+80]
sb_ar_offset  equ [edi+84]
}

sb_btn_high - высота боковых кнопок (левая и правая для гориз. и верхняя и нижняя для верт.)

sb_type - зарезервировано для будущих типов, если скроллбар будет дорабатываться.

sb_max_area - область максимальная, актуально когда не влазит в отображаемую область, т.е. случай активности компонента (весь максимальный размер документа)

sb_cur_area - область отображаемая (какая часть документа влазит в экран)

sb_position - позиция бегунка изменяемая от 0 до значения (sb_max_area-sb_cur_area)

sb_bckg_col - цвет внутренний, применяется для областей между бегунком и кноками

sb_frnt_col - цвет наружный, применяется для областей отличных от применяемых в sb_bckg_col

sb_line_col - цвет линий и стрелок на кнопках

sb_redraw - индикатор необходимости перерисовки управляемой области учитывая изменение sb_position и sb_cur_area

sb_delta2 - индикатор захвата фокуса скроллбаром (удержание бегунка)

sb_all_redraw - флаг устанавливаемый в 1 для перерисовки всего компонента, если поставить 0, то перерисовка происходит только для области бегунка. Введено для ускорения отрисовки, поскольку не во всех случаях требуется принудитеьно отрисовывать все части компонента. Когда вызывается по событию мыши всегда отрисовывается самим компонентом со значением 0.

sb_ar_offset - величина смещения при однократном нажатии боковой кнопки.


Документация обновлялась последний раз 05.02.10.