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. |
Смотрите также: