ProcessEvent

ProcessEvent сообщает плагину о разных событиях FAR'a и позволяет обработать некоторые из них.
int WINAPI ProcessEvent(
  HANDLE hPlugin,
  int Event,
  void *Param
);

Параметры

hPlugin
Описатель плагина, возвращается функциями OpenPlugin или OpenFilePlugin.
Event
Тип события. Одно из следующих значений (перечисление FAR_EVENTS):
СобытиеОписание
FE_CHANGEVIEWMODE Сменился режим просмотра панели.
Param указывает на строку типов колонок, оканчивающуюся нулем, например N,S,D,T. Возвращаемое значение должно быть FALSE.
FE_REDRAW Панель должна перерисоваться.
Param равен NULL.
Верните FALSE, чтобы использовать функцию перерисовки FAR'a, или TRUE, чтобы отключить ее. В последнем случае плагин должен перерисовать панель сам.
FE_IDLE Посылается с интервалом в несколько секунд. Плагин может использовать это событие, чтобы вызвать обновление панели и ее перерисовку, если это необходимо.
Param равен NULL.
Возвращаемое значение должно быть FALSE.
FE_CLOSE Панель закрывается.
Param равен NULL.
Верните FALSE для закрытия панели или TRUE для отмены этого.
FE_BREAK Нажатие Ctrl-Break.
Param может быть только (int)CTRL_BREAK_EVENT
Возвращаемое значение должно быть FALSE.
Обработка этого события выполнена в отдельном потоке, поэтому плагин должен быть осторожным при выполнении операций ввода-вывода и не должен использовать сервисные функции FAR'a.
FE_COMMAND Перед запуском команды в командной строке FAR'a.
Param указывает на текст команды.
Для разрешения стандартной обработки команды плагин должен вернуть FALSE.
Если плагин собирается обработать команду сам, то он должен вернуть TRUE.
FE_KILLFOCUS Панель потеряла фокус ввода.
Param = NULL.
Функция должна вернуть FALSE.
FE_GOTFOCUS Панель получила фокус ввода.
Активная панель получает событие FE_GOTFOCUS сразу после создания.
Param = NULL.
Функция должна вернуть FALSE.
Param
Значение указателя зависит от типа события. Смотрите описание событий для уточнения информации.

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

Возвращаемое значение зависит от типа события. Смотрите описание событий для уточнения информации.
Верните FALSE для неизвестных типов событий.