OpenInfo

Programming Far Manager plugins

OpenInfo

Структура OpenInfo используется для возвращения Far Manager'ом информации о плагине в функцию OpenW.
struct OpenInfo
{
  size_t StructSize;
  enum OPENFROM OpenFrom;
  const GUID *Guid;
  intptr_t Data;
};

Элементы

StructSize
Это поле содержит размер структуры OpenInfo.
OpenFrom
Идентификатор, определяющий, откуда был вызван плагин. Может принимать одно из следующих значений (перечисление OPENFROM):
КонстантаОписание
OPEN_LEFTDISKMENU Открыт из левого меню "Сменить диск" (Alt+F1).
OPEN_PLUGINSMENU Открыт из меню "Команды внешних модулей" (F11).
OPEN_FINDLIST Открыт из диалога "Поиск файла". Этот идентификатор плагин получит только в том случае, если он экспортирует функцию SetFindListW. Последующий вызов функции SetFindListW произойдёт только в том случае, если функция OpenW вернёт значение отличное от NULL.
OPEN_SHORTCUT Открыт через ссылку на папку в меню "Команды" - "Ссылки на папки".
OPEN_COMMANDLINE Был открыт из командной строки. Этот параметр может использоваться, только если плагин определил вызывающий префикс в функции GetPluginInfoW и этот префикс, с двоеточием после него, был указан в командной строке.
OPEN_EDITOR Открыт из редактора.
OPEN_VIEWER Открыт из встроенной программы просмотра.
OPEN_FILEPANEL Открыт из панелей.
OPEN_DIALOG Открыт из диалога.
OPEN_ANALYSE Открыт после анализа содержимого файла (например, архива)
OPEN_RIGHTDISKMENU Открыт из правого меню "Сменить диск" (Alt+F2).
OPEN_FROMMACRO Открыт из макрокоманды макрофункцией Plugin.Call.
OPEN_LUAMACRO Открыт для проверки или исполнения Lua-макроскрипта.
Guid
GUID выбранного элемента в списке пунктов, экспортированном данным плагином в меню "Диск", "Команды внешних модулей".
Data
Интерпретация параметра зависит от OpenFrom:
КонстантаОписание
OPEN_LEFTDISKMENU Этот параметр всегда равен 0.
OPEN_PLUGINSMENU Этот параметр всегда равен 0.
OPEN_FINDLIST Этот параметр всегда равен 0.
OPEN_SHORTCUT Этот параметр равен адресу структуры OpenShortcutInfo, данные в момент сохранения горячей клавиши.
OPEN_COMMANDLINE Этот параметр равен адресу структуры OpenCommandLineInfo, данные о командной строке.
OPEN_EDITOR Этот параметр всегда равен 0.
OPEN_VIEWER Этот параметр всегда равен 0.
OPEN_FILEPANEL Этот параметр всегда равен 0.
OPEN_DIALOG Этот параметр равен адресу структуры OpenDlgPluginData, данные о диалоге.
OPEN_ANALYSE Этот параметр равен адресу структуры OpenAnalyseInfo, данные о файле-контейнере. Вы должны освободить их так, как будто бы получили их в CloseAnalyseW
OPEN_RIGHTDISKMENU Этот параметр всегда равен 0.
OPEN_FROMMACRO Этот параметр равен адресу структуры OpenMacroInfo.
Смотрите также: