PutFilesW

Programming Far Manager plugins

PutFilesW

Функция PutFilesW вызывается Far Manager для перемещения файлов на панель эмулируемой файловой системы.
(Far Manager плагину: "этот/эти файл(ы) для тебя, можешь поместить на свою панель").
intptr_t WINAPI PutFilesW(
  const struct PutFilesInfo *Info
);

Параметры

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

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

  • В случае удачи, функция должна возвращать 1 или 2. Если плагин возвращает 1, то Far Manager пытается установить курсор на последний по дате создания файл текущей панели. Если плагин возвращает 2, то Far Manager никаких перемещений курсора не предпринимает.
  • Если функция завершилась неудачей, должен возвращаться 0.
  • Если же функция была прервана пользователем, то возвращаемое значение должно равняться -1.

Замечания

  1. Если операция была прервана, но часть файлов всё же была скопирована, плагин может убрать выделение только с обработанных файлов. Для этого он должен сбросить флаг PPIF_SELECTED у соответствующих структур файлов, передаваемых в функцию через параметр PutFilesInfo.PanelItem.

Пример

Пример из плагина "TmpPanel".
intptr_t WINAPI PutFilesW(const struct PutFilesInfo *Info)
{
  TmpPanel *Panel=(TmpPanel *)Info->hPanel;
  return Panel->PutFiles(Info->PanelItem,Info->ItemsNumber,Info->Move,Info->SrcPath,Info->OpMode);
}
Смотрите также: