SysFn40/ru

From KolibriOS wiki
Jump to: navigation, search

Функция 40 - установить маску для ожидаемых событий.


Маска для ожидаемых событий влияет на функции работы с событиями 10, 11, 23 - они сообщают только о событиях, разрешённых этой маской.
Параметры:

(установленный бит разрешает извещение о событии)
bit 31: фильтр активности событий мыши
bit 31 = 0 - неактивное окно всегда получает события от мыши
bit 31 = 1 - неактивное окно не получает события от мыши
bit 30: фильтр позиции курсора
bit 30 = 0 - окно принимает события мыши, если курсор за пределами окна
bit 30 = 1 - окно не принимает события мыши, если курсор за пределами окна

Возвращаемое значение:

  • eax = предыдущее значение маски

Замечания:

  • Маска по умолчанию (7=111b) разрешает извещения о перерисовке и нажатиях клавиш и кнопок.
Этого достаточно для большинства приложений.
  • События, запрещённые в маске, всё равно сохраняются, если приходят; о них просто не извещают функции работы с событиями.
  • Функции работы с событиями учитывают маску на момент вызова функции, а не на момент поступления сообщения.

Константы для регистров:

eax - SF_SET_EVENTS_MASK (40)