ModifyUIPageHook

Синтаксис

int ModifyUIPageHook( int event, 
                      PAGEHOOKPROC proc,
                      LPARAM ClientData, 
                      int mode );

Описание

Функция устанавливает/удаляет ловушку событий книг.

Параметры

  • event - номер события, к которому привязана ловушка. Если функции передано нулевое значение (NIL_EVENT), будут ловиться все события.
  • proc - колбэк-функция
  • ClientData - данные, ассоциируемые с ловушкой. Эти данные будут всегда приходить в колбэк-функцию.
  • mode - действие, выполняемое над ловушкой:
    • PAGE_HOOK_REMOVE - удаление ловушки. Параметры event и PROC должны соответствовать соответствующим параметрам, использованным при установке ловушки.
    • PAGE_HOOK_ADD_BEFORE - установка ловушки «before». Колбэк-функция выполняется до обработчика события книги. При этом колбэк-функция может запретить передачу события другим ловушкам, заблокировать выполнение обработчика события, а так же воспрепятствовать получению события другими книгами (возвращаемые колбэком значения BLOCK_EVENT_GLOBALLY и BLOCK_EVENT_IN_THIS_SESSION).
    • PAGE_HOOK_ADD_AFTER - установка ловушки «after». Колбэк-функция выполняется после обработчика события книги. Колбэк не может влиять на передачу события другим ловушкам и книгам, результат колбэк-функции игнорируется.

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

В случае успешного выполнения, функция возвращает 0. При ошибке функция возвращает отрицательное число.

Примечание

Колбэк может получить нулевой указатель book, если сообщение передано обработчику страницы по умолчанию (см. параметр default_page структуры APP_DESC, передаваемой функции CreateBook).

Колбэк «after» может получить недействительный указатель book, если книга уничтожается в оригинальном обработчике события. Поэтому при использовании book в ловушке этого типа нужно обязательно проверять, существует ли книга. Для этого можно использовать функцию FindBookEx.

Использовать одну колбэк-функцию для установки сразу обоих типов ловушек одного и того же события, не рекомендуется, хотя и допускается. При удалении в этом случае будет удален хук «before», а при повторном удалении уничтожится уже «after».

См. также

You: Guest
You permissions: Read
elflib/functions/modifyuipagehook.txt · Последние изменения: 30/03/2015 00:00 (внешнее изменение)
Total pages: 365
RSS on Mobilefree Wiki www.chimeric.de Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Valid XHTML 1.0
© 2005-2018 supertrubka.org