Хочется при вызове функции плагина OpenFilePluginW показать пользователю меню со списком возможных действий (например, в RegEdit, при попытке входа в reg-файл вывалить "Browse" / "Import as 32bit" / "Import as 64 bit").
Однако, если данный файл согласятся обработать несколько плагинов - получается зоопарк. Сначала (или в процессе) меню показывает мой плагин, а потом Far дает возможность пользователю выбрать плагин, которым он действительно хочет открыть файл.
На данный момент мне видится только кривая реализация - выполнять реальный старт плагина не в OpenFilePluginW, а в GetFindDataW или в GetOpenPluginInfoW. Но это как-то не красиво. Можно сделать по другому? Или только wish?
Меню плагина в OpenFilePluginW
- WARP ItSelf
- Самый умный
- Posts: 1011
- Joined: Tue 15 Mar, 2005 23:19
- Contact:
Re: Меню плагина в OpenFilePluginW
Не доделан. Пока можно сделать только некрасиво, как написано. Т.е. показывать диалог в GetFindData.
Никто не знал, а я...
Re: Меню плагина в OpenFilePluginW
его похоже никто и не делал? т.е. с появления "highly experimental" год назад, ничего не изменилось.
а хотелось бы.
а хотелось бы.
- WARP ItSelf
- Самый умный
- Posts: 1011
- Joined: Tue 15 Mar, 2005 23:19
- Contact:
Re: Меню плагина в OpenFilePluginW
Ну, ты можешь попробовать сделать Analyse. Оно на вход принимает AnalyseData. Возвращает BOOL. Если оно вернет TRUE, то должен вызваться OpenPlugin(OPEN_ANALYSE) (если в меню будет выбран этот плагин, конечно). Но если не взлетит или в полете оторвет крылья - я не виноват.
Никто не знал, а я...
Re: Меню плагина в OpenFilePluginW
Почти взлетело.
Нужно только строчку plugins.cpp:707 поправить на что-то типа
if (!(pPlugin->HasAnalyze() ...
а то ветка не активируется, если в плагинЕ есть OpenFilePluginW
Нужно только строчку plugins.cpp:707 поправить на что-то типа
if (!(pPlugin->HasAnalyze() ...
а то ветка не активируется, если в плагинЕ есть OpenFilePluginW