ProcessPanelInputW

Programming Far Manager plugins

ProcessPanelInputW

Функция ProcessPanelInputW позволяет перекрыть стандартную обработку клавиш и мыши (сейчас не задействовано) на панели плагина.
intptr_t WINAPI ProcessPanelInputW(
  const struct ProcessPanelInputInfo *Info
);

Параметры

Info
Указатель на структуру ProcessPanelInputInfo. Эта структура содержит информацию о последнем событии от клавиатуры или мыши.
В начале функции проверьте, что поле ProcessPanelInputInfo.StructSize >= sizeof(ProcessPanelInputInfo).

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

  • Если плагин должен передать управление в Far Manager, то верните 0.
  • Если плагин в полной мере отработал событие или вы хотите, чтобы Far Manager игнорировал это событие, то верните 1.

Замечания

  1. Плагин должен корректно обрабатывать входные события путём анализа поля Info->INPUT_RECORD.EventType и, в случае если плагин данное событие не обрабатывает, вернуть управление в Far Manager.
  2. Во время "проигрывания" макроса клавиатурные события (KEY_EVENT) имеют "новый" тип - поле Info->INPUT_RECORD.EventType равно значению 0x8001.

Пример

Пример из плагина "ProcList".
intptr_t WINAPI ProcessPanelInputW(const struct ProcessPanelInputInfo *Info)
{
  return ((Plist *)Info->hPanel)->ProcessKey(&Info-;>Rec);
}
Смотрите также: